Java的编程语言是面向对象的,采用这种语言进行编程称为面向对象编程
对 Java 语言来说,一切皆是对象。把现实世界中的对象抽象地体现在编程世界中,一个对象代表了某个具体的操作。一个个对象最终组成了完整的程序设计,这些对象可以是独立存在的,也可以是从别的对象继承过来的。对象之间通过相互作用传递信息,实现程序开发。
封装(Encapsulation)
封装的目的是为了保证变量的安全性,使用者不必在意具体实现细节,而只是通过外部接口即可访问类的成员
如果不进行封装,类中的实例变量可以直接查看和修改,可能给整个代码带来不好的影响
因此在编写类时一般将成员变量私有化,外部类需要同getter和setter方法来查看和设置变量
类:是对现实生活中事物的描述。
对象:就是这类事物,实实在在存在的个体。
对象:对象是类的一个实例(对象不是找个女朋友),有状态和行为。例如,一条狗是一个对象,它的状态有:颜色、名字、品种;行为有:摇尾巴、叫、吃等。
类:类是一个模板,它描述一类对象的行为和状态。
简单说,对象就是能归类
Java 中的类: 分为属性和方法(函数)
public class Dog{ double size; String colour; int age; String name; void eat(){}; void run(){}; void sleep(){}; void name(){}; public static void main(String[] args) { Dog dog = new Dog(); dog.size=5; dog.age=10; dog.colour="黄色"; dog.name="球球"; System.out.println(dog.name+"的颜色是"+dog.colour); } }
一个类可以包含以下类型变量:
局部变量:在方法、构造方法或者语句块中定义的变量被称为局部变量。变量声明和初始化都是在方法中,方法结束后,变量就会自动销毁。
成员变量:成员变量是定义在类中,方法体之外的变量。这种变量在创建对象的时候实例化。成员变量可以被类中方法、构造方法和特定类的语句块访问。
类变量:类变量也声明在类中,方法体之外,但必须声明为 static 类型。
如上图,我们可以改造一些,new 对象的时候,就传入属性:
这个时候就引入 构造函数,如果属性是私有的,就引入了set,get函数:
public class Dog{ private double size; String colour; int age; String name; void eat(){}; void run(){}; void sleep(){}; void name(){}; public double getSize() { return size; } public void setSize(double size) { this.size = size; } public Dog(int age, String name) { this.age = age; this.name = name; } public static void main(String[] args) { Dog dog = new Dog(1,"小猫"); dog.setSize(10); System.out.println(dog.name+"的年龄是"+dog.age+",大小是"+dog.size); } }