类,对象,构造方法的总结
类和对象的理解:现实世界并没有类的存在,存在的只有一个个的对象,如小明,小红,我的笔记本电脑等,这些对象是具体,客观存在的;我们可以把那些具有相似特征的对象归结为一类,如小明和小红这两个人都可以归为学生这一类;而小红和我的笔记本电脑有不同点,所以归纳为不同的类,类是抽象的,主观的。
在类中我们可以定义属性和方法,属性即对对象的特征描述,方法是对对象的行为定义;如定义一个学生类,学分和名字是他们的属性,学生在打篮球是一个类行为的一个方法;可以这样定义:
public class Student{
private String name; //定义名字属性
private String score; //定义学分属性
public void play{ //定义类的行为方法
System.out.println(name+"在打篮球");
}
}
在主程序中可以定义一个类中的对象,这个定义好的对象就可以调用自己的属性和方法;如
Student Stu1 = new Student();//定义一个对象Stu1
Stu1.setName="小明"; //定义Stu1的name为小明,setName是一个设置name的方法
Stu1.play(); // 将输出"小明在打篮球"
另定义时:
public 公开的,没用任何访问限制
private 私有的,只有在类的内部才能访问
方法重载:即可以在一个类中定义多个相同名称的方法,但这些方法必须因为有无参数值,参数类型的或种类者顺序不同而可以唯一区分。可分为一般方法和构造方法,区别是:
1.构造方法不用声明返回值类型(void是一种空返回类型) 2.构造方法的方法名必须和类名相同 3.构造方法要通过关键字new来调用,其返回数据类型就是一个方法名(方法名和类名相同)
在主函数中可以根据需要选用构造方法,如果重载了构造方法,则默认的构造方法(无参)就失效了,如果还想使用默认的构造方法,则必须在类中声明。
this关键字:this关键字在类中指代当前对象。相当于每个人都可以用”我“一样,具体到哪个人,就指哪个。
如创建如下二个构造方法:
public class Student{
public Student{
}
public Student(String name){
this.name=name;// 加this后,后面的name就区分不是”形参“中的name
}
}
一个类中也可以多个创建方法名相同,参数不同的一般方法。