javase知识第三讲

面向对象程序设计

三大基本特征:继承(Inheritence),封装(Encapsulation),多态(Polymorphism)

1、类与对象

类:类是抽象的概念,类中包含了数据(通常是名词)与对数据的操控(通常是动词)。

数据:数据在类中称为属性(Property)或者是成员变量(Member variable)。
对数据的操控:这种操控称为方法(method)。

成员变量与局部变量

定义在方法中的变量叫做局部变量,局部变量使用前必须声明并赋初值,成员变量使用前必须声明,但可以不赋初值。
每个类型的成员变量都有一个默认的初始值
byte、short、int、long类型的初始值为0
float、double类型的初始值为0.0
char类型的初始值为’\u0000’
boolean类型的初始值为false

方法

1)方法:方法不能嵌套,也就是不能在一个方法中定义另一个方法,方法只能定义在类中。首先定义方法,之后可以使用方法(调用方法),当方法调用完毕后,方法可以返回值,方法到底是否返回值是由方法的定义决定的。
2)在方法定义中,方法的返回类型与return后面的变量或常量类型保持一致。
3)在方法调用时,给方法传递的参数需要与方法定义时的参数保持一致(参数个数一致,参数的类型一致)。
4)方法定义时的参数叫做形式参数。方法调用时所赋予的具体值叫做实际参数。
5)关键字void表示方法不返回值。如果方法不返回值,那么声明方法的时候使用void关键字,在方法定义中可以有两种情况实现不返回值:a)不使用return语句 b)使用return语句,但return后面没有任何值或变量,return后面只有一个分号,表示退出方法,返回到方法的调用端。使用方法:return;

方法重载
方法重载(Overload):表示两个方法或多个方法名字相同,但方法的参数不同
参数类型不同
参数顺序不同
参数个数不同。

public  class Test{
	public int add(int a){
		System.out.println(a);
		return a;
	}
	public void add(int a,int b){
		System.out.println(a+b);
	}
	public void add(int a,int b,int c){
		System.out.println(a+b+c);
	}
	public static void main(String []args){
	Test test=new Test();
	test.add(4);
	test.add(4, 7);
	test.add(5, 6, 7);
	}
}

输出结果:

4
11
18

对象:对象是一个具体的概念,是类的一种具体表示方式。

对象(Object):通过类来生成对象,通常使用new关键字来生成对象。对象又叫做实例(Instance),生成一个对象的过程又叫做实例化。
方法调用需要通过对象来完成,方法调用的形式是:对象变量.方法名([参数值1,参数值2,参数值3…];)

扫描二维码关注公众号,回复: 10503740 查看本文章

new:new关键字在生成对象时完成了三件事情(而且是按照顺序来的)

为对象开辟内存空间
调用类的构造方法
将生成的对象的地址返回(返回给生成这个对象的的引用,这样这个引用就指向这个对象,如People people=new People();)

2、构造方法

构造方法:构造方法用于完成对象属性的初始化工作。

构造方法的名字必须与类名完全一致(包含大小写)
构造方法没有返回值,连void也不能出现
如果在定义一个类时,没有为类声明构造方法,那么java编译器会自动添加一个没有参数且方法体为空的构造方法(默认的构造方法)。

如果想在一个构造方法中调用另一个构造方法,那么可以使用this()调用,this()括号中的参数表示目标构造方法的参数。并且this()必须作为构造方法的第一条语句。

public  class Test{
	public Test(){
		this(3);
		System.out.println("Test");
	}
	public Test(int i){
		System.out.println(++i);
	}
	public static void main(String []args){
	Test test=new Test();
	}
}

输出结果:

4
Test

3、命名约定

a) 类:首字母大写,如果一个类名由多个单词构成,那么每个单词的首字母都大写,中间不使用任何的连接符。比如Person类,MemberTest类。
b) 方法:首字母小写。如果一个方法由多个单词构成,那么第一个单词的所有字母全都小写,从第二个单词开始,每个单词的首字母大写。比如add,addThreeInt。
c) 属性:命名约定与方法相同。比如age,ageOfPerson。
注意成员变量命名最好用m+名字,比如mage、mageOfPerson。

4、封装

封装:类中包含了数据与方法,将数据与方法放在一个类中就构成了封装。

发布了45 篇原创文章 · 获赞 38 · 访问量 2168

猜你喜欢

转载自blog.csdn.net/qq_44830627/article/details/104670349