相关概念
1、面向对象程序设计的三大基本特征:继承(Inheritance)、封装(Encapsulated)、多态(Polymorphism)
2、类中的属性又叫做成员变量(member varlable),属性(property或attribute)
3、对象(Object)又叫做实例(instance)生成一个对象的过程又叫做实例化
4、定义在类中的属性叫做成员变量,定义在方法里的变量叫做局部变量
局部变量使用前必须要声明并赋初值,成员变量使用前必须要声明,但可以不赋初值
如果成员变量不赋初值,则
(1)byte、short、int、long类型的初始值默认为0
(2)float、double类型的初始值为0.0
(3)char类型的初始值为‘\u0000’
(4)boolean类型的初始值为false
5、构造方法(Constructor):构造方法用于完成对象属性的初始化工作,特点是:
(1)构造方法的名字必须与类名完全一致,可以有参数列表
(2)构造方法没有返回值,连void也不能出现
(3)如果定义一个类的时候,没有为类声明构造方法,那么Java编译器会自动为类添加一个没有参数且为空的构造方法(默认的构造方法)如:public Person() { }
(4)不能显式调用类的构造方法,构造方法通常是通过new来调用
6、new关键字在生成对象时完成三件事:
(1)为对象开辟内存空间
(2)调用类的构造方法
(3)将生成的对象的地址返回
如果一个java源文件中定义了多个类,那么这些类中最多只能有一个类是public的,main函数一定要在public类中
7、命名约定
1、类:首字母大写,如果一个类名由多个单词构成,那么每个单词的首字母都大写,中间不使用任何的连接符,如:MemberTest类
2、方法:首字母小写,如果一个方法由多个单词构成,那么第一个单词的所有字母全小写,从第二个单词开始,每个单词的首字母大写,如:addThreeInt方法
3、属性:命名约定与方法相同,如:ageOfPerson属性/变量
定义类
public/pravate class 类名 {
//类的内容(包括属性和方法)
}
如:public class Test {
int a;
public int add();
}
定义属性
public/pravate 数据类型 属性名称 ;
如public int tree ;
定义方法/函数
public/pravate 返回类型 方法名(参数类型 参数1,参数类型 参数2,……) {
//代码块
//用return语句返回值,如:retuan 1;
//ruturn ; 表示不返回值直接结束方法执行
}
如:public static void main(String[] args) { }
返回类型为void时表示不返回值
main方法是整个Java程序的入口点,如果没有main方法,则程序无法执行
方法不能嵌套定义
生成对象
1、使用new来生成对象
类名 变量名 = new 类名() ;
如:Person person1 = new Person() ;
此时person1类似于C语言的指针,指向新生成的对象
2、
方法调用和属性使用
对象变量.方法名( 参数1, 参数2, ……) ;
如:person1.add(a, b) ;
当传递的参数是原生数据类型时,在方法里对参数的修改对外部参数没有影响
对象变量.属性
如:person1.age ;
构造方法想调用其他的构造方法,可以使用this( 参数1,参数2 …… )方法:表示调用本类中和参数列表对应的那个构造方法
this()方法必须放在构造方法的第一行
方法重载(Overload)
表示两个或多个方法名相同,但方法参数不同(参数个数不同或参数类型不同),返回值并不能导致方法重载,构造方法也可以重载,重载的函数之间可以相互调用