从C语言转到JAVA后,出现了很多新的概念,比如类和对象,两者的概念可以类比为模具和实物,一个模具可以制作多个实物,一个类也可以有多个对象。我也想做类,有多个对象...
下面我设置一个人物类来实际说明一下,类和对象的概念关系。
public class Person {
private String name;
protected int age;
public String work;
}
首先是类里面最基本的东西--元素,看起来是不是有些熟悉,没错C语言中的结构体也是这样的,虽然长得差不多,但结构体和类的作用却不太一样。
首先这里面可以使用三种修饰头,public,private,protected.
1、public:public表明该数据成员、成员函数是对所有用户开放的,所有用户都可以直接进行调用
2、private:private表示私有,私有的意思就是除了class自己之外,任何人都不可以直接使用,私有领域神圣不可侵犯嘛,即便是子女,朋友,都不可以使用。
3、protected:protected对于子女、朋友来说,就是public的,可以自由使用,没有任何限制,而对于其他的外部class,protected就变成private。
由于这三种不同的权限,为了工程的稳定和严谨通常使用private来命名,在给后面加上赋值和读取函数做接口。
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public String getWork() {
return work;
}
public void setWork(String work) {
this.work = work;
}
以上分别是读取函数和输入函数,也就是通常说的接口。值得注意的是,使用本class内的变量时,建议使用this.做前缀,使用更为规范。
因此我们也可以使用将其全部输出的函数
public String toString() {
return "人物{" +
"姓名='" + name + '\'' +
", 年龄=" + age +
", 工作='" + work + '\'' +
'}';
}
这个类基本已经设置好了,可以在其它类里调用一下看看吧。
public class Main {
public static void main(String[] args) {
Person ps = new Person();
ps.setName("张三");
ps.setAge(30);
ps.setWork("工人");
System.out.println(ps.toString());
}
}
输出结果为