第五天-纠结的面向对象(Object-Oriented,OO)
今天直接进入了Java的面向对象的学习,面向对象是Java的一大语言特性之一,也是最近流行的一种程序设计、开发方法,较常见的面向对象语言有C++、Java、C#、Objective-C,面向对象语言的刻画客观对象较为自然,便于软件的拓展与复用,面向对象主要有以下几个特性:
- 继承
- 多态
- 封装
今天老师的主要内容:
- 类和对象的区别
- 类的属性
- 构造方法
- 类的方法
- 实例化类
类和对象的区别
类是对象的模板,对象是类实例。
类的属性
属性是类中定义的变量,用来描述类的特征。如以下语句表达了人这个类
的属性。
//Manking.class
public class Mankind{
public String name;
public String sex;
public int age;
public Date birthday;
}
构造方法
构造方法是类中的和类同名的一个公共方法,用来初始化类的属性,构造方法没有返回值,但是可以有参数类别,如Manking.class
的构造方法为public Mankind(参数列表){表达式};
,构造方法一般在实例化类的时候根据所传的参数自动调用相应的构造方法。代码清单:
//Mankind.class
public class Mankind{
//定义属性
public String name;
public String sex;
public int age;
public Date birthday;
//无参的构造方法
public Mankind(){
//表达式
}
//有参数的构造方法初始化属性
public Mankind(String name;String sex,int age,Date date){
this.name=name;
this.sex=sex;
this.age=age;
this.birthday=date;
}
}
类的方法
类中的方法是用来描述类的行为和动作的,如Mankind.class
可以定义人这个类
的一些行为,走路``吃饭``睡觉
等等。代码清单:
//Mankind.class
public class Mankind(){
//走路的行为方法
public void walk(){
Print("The man is walking.");
}
//吃饭行为的方法
public void eat(){
Print("The man is eating");
}
//睡觉行为的方法
public void sleep(){
Print("The man is sleeping");
}
//有参数的方法
public void takeBus(String whichBus){
Print("The take the "+ whichBus);
}
//有返回值的方法
public String getWrite(){
return "The man is writting";
}
}
实例化类
类的实例化是指用类这个模板来新建一个具体的实例(对象),在面向对象的语言中,一般用new关键字来实例化类。代码清单:
//Mankind.class
//实例化类的时候调用无参的构造方法
Mankind man=new Mankind();
//实例化类的时候调用有参数的构造方法
Mankind man=new Mankind("name","sex",age,birthday);
//方法的调用
//调用吃饭的方法
man.eat();
//调用有参数的方法
man.takeBus("Metro");
//调用有返回值的方法
String write=man.getWrite();
Print(write);