(java&c) 类与结构体
Posted 七七铺
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了(java&c) 类与结构体相关的知识,希望对你有一定的参考价值。
学过c语言然后学java,大家看到一个熟悉而又陌生的东西,java中的类与结构体,函数与方法十分相似,接下来进行简单的介绍和他们之间的区别。
结构体在c语言中可以存放多个数据类型,java中类存放对象的信息和方法(与c语言中函数类似)
以下是一段结构体代码
public struct Cat
string name;
int age;
以下是一段java中类的代码
public class Cat
string name;;
int age;
public cat1
System.out.println("有小喵");
struct Cat cat;/ *声明一个cat,类型为Cat*/
Cat cat=new Cat();/*声明一个cat,类型为Cat*/
相同处
1.结构体和类都可以实现对于数据的封装,比如将一辆车定义为由多个部分组成;比如:一个人,他的姓名,他的身高,他的体重等;
2.结构体和类都是可以嵌套的,反复使用;
3.在编写代码上要进行声明与定义;
不同之处
1.C中的结构体只是多种不同类型数据的集合,java中的类就是面向对象中的类,C语言中是没有类的概念的,但是C语言可以通过结构体内创建函数指针实现面向对象思想。
2.结构体是实值类型,而类则是引用类型.
3.结构体中的成员变量都是可以直接访问的,而类则可以通过声明public、protected、private进行访问权限的控制。类是可以继承的,子类可以通过继承获得父类的一些属性或者方法,这是结构体所不具有的。
以下是克隆代码:
class p
String name;
int age;
class MyTools
pubilc Person copyPerson(Person p)
Person p2=new Person();
p2.name=p.name;
p2.age=p.age;
4.结构体是封装数据用的,是自定义的一种变量类型;而java作为一种面向对象语言,将所有东西都封装在类中,包括程序执行入口的方法(这与c语言结构体有很大不同)。
5.java中类中方法跟c语言函数一样有返回值,实参与形参;
ublic class Test
public static void main(String[] args)
AA a=new AA();
a.test(4);
class AA
public void test(int n)
if(n>2)
test(n-1);
System.out.println("n=" + n);
这就是c语言结构体与java类的所以内容,谢谢支持。
以上是关于(java&c) 类与结构体的主要内容,如果未能解决你的问题,请参考以下文章