面向对象程序设计核心在于“封装”,即将同一类事物抽象为类class,类似于关系数据库中实体型,这个类中元素就如属性一般去描述这个类,“属性”不仅包括变量,还包括这个类可能使用的函数,也叫方法,由变量和函数即可构成一个类。同时这个“类”的概念也可以类比于C语言中结构体类型,只不过相比于结构体,“类”中多了函数(方法)元素,归结到底,类其实就是你自己定义的一种数据结构(也可以说是一种数据类型),这个数据结构中包含变量和函数
假设 一辆汽车,难么各个部分可以抽象为一个类,如可以抽象出一个轮胎类wheel,这个轮胎类中包括轮胎属性,如内径、材质等,也包括轮胎所使用的一些函数,如滚动函数等。假设汽车抽象了好多个类,如司机类driver,发动机类engine,开车类take,轮胎类,此时如果要使用轮胎类相关属性或方法,那么此时我们就把类弄出一个对象,就如同int a,int生成了对象a,在Java中用类似wheel w=new wheel("wheel_name",3),括号中是对属性的初始化,生成了对象a,a就可以引用类中变量、方法
例如:
package javastudy;
public class ConfunDemo3 {
public static void main(String[] args){
Person z=new Person("zhangsan",3); //实例化对象时,new Person()里直接调用Person构造函数并转转实参,相当于setter功能
z.show();
}
}
class Person{
private String name;
private int age;
public Person(String n,int m){ //有参数构造函数,实现给private成员变量传参数值的功能
name=n;
age=m;
}
//getter //实例化对象时,完成了sett功能后,需要getter,获取实参值。
public String getName(){
return name;
}
public int getAget(){
return age;
}
public void show(){ //获取private值后,并打印输出
System.out.println(name+"\n"+age);
}
}