学习目标:
- 掌握类,对象和构造方法的创建和使用
学习内容:
- Java中的类和对象
- 构造方法
Java中的类和对象:
- 类和对象的定义
类
Java当中,类可以理解为某一类东西,比如在现实生活中,水果,蔬菜等等都属于类的定义。在编写代码时,主要使用的语句是public class +类名,例如这里创建水果类:
—public class fruit(){ }
和自然界一样,不同的类之所以能够区分开来,主要是由于他们有不同的属性,就比如水果由于外观,味道,颜色等等属性能够被区分开来,同样在Java中可以在类下定义不同的属性:
public class fruit (){
string name;
}
这里就定义了水果的名字。注意到,name的前缀是string,这是因为java中存在不同的数据类型,数据类型分为引用类型/自定义和内置数据类型,内置数据类型主要有整型,浮点型等等,而类主要属于引用类型。
类里面通常也会包括一些方法,用来执行一些功能,例如
public class fruit (){
string name;
public void out(){
System.out,println(“水果的名字是”+name)}
}
这些方法通常会在主函数里调用
我们注意到很多函数,方法,对象前都有public,这其实是权限修饰。
权限修饰可以分为:public ,private,protected,default.其中pulic是权限最大的。private可以修饰成员变量,成员方法,构造方法,不能修饰类(此刻指的是外部类,内部类不加以考虑)。被private修饰的成员只能在其修饰的本类中访问,在其他类中不能调用,但是被private修饰的成员可以通过set和get方法向外界提供访问方式。注意到上面水果类没有权限修饰,我们不妨改成private。
public class fruit (){
private string name;
public void out(){
System.out,println(“水果的名字是”+name)}
}
再看这样一段示例代码:
public class fruit (String name){
this.name=name;
public void out(){
System.out,println(“水果的名字是”+name)}
}
在创建类时,我们同样可以直接赋予其属性。这里我们使用了this,this可以用来调用本类中的成员对象。
对象
创建类之后,要调用其中的属性和方法,我们就需要创建对象,Java中创建对象的操作通常是类名+对象名+new 对象。例如:
fruit juzi = new fruit();
当我们要这个对象赋予属性和方法是,就可以采用如下的操作:
public static void main(String[] args) {
fruit juzi = new fruit();
juzi.name = (“橘子”);
juzi.out();
}
但是当我们用private修饰时,无法直接调用类中的方法。因此我们需要set,get函数来调用属性。例如:
public void setName(String name){
this.name = name;
}
public String getName(){
return name;
}
在主函数中调用时,就可以使用如下的操作:
juzi.getName();
来获取私有属性。
构造方法:
构造方法是类中一个特殊的方法,构造方法的名字必须和其类名相同,并且没有类型也可以没有权限修饰。
public class fruit (){
private string name;
public void out(){
System.out,println(“水果的名字是”+name)}
}
就拿上面的水果类来说,构造方法可以这样来写:
public class fruit (){
string name;
public void out(){
System.out,println(“水果的名字是”+name)
}
fruit(){
System.out,println(“水果的名字是”+name)}
}
fruit (string name){
this.name =name
}
}
在调用方法时,juzi.fruit()和juzi.fruit(“橘子”)就是调用了两种构造函数,可见一个类中可以有多个构造方法,但必须保证它们的参数不同(参数的个数不同,或参数的个数相同,但某个参数的类型不同)。