什么是面向对象
类的结构
在类中有5种结构,分别是:
属性
public class User {
private String name;
private String password;
}
方法
public class User {
private String name;
private String password;
public String toString() {
return "User{" +
"name='" + name + '\'' +
", password='" + password + '\'' +
'}';
}
}
构造器
public class User {
private String name;
private String password;
public User() {
}
public User(String name,String password) {
this.name = name;
this.password = password;
}
public String toString() {
return "User{" +
"name='" + name + '\'' +
", password='" + password + '\'' +
'}';
}
}
代码块
public class User {
private String name;
private String password;
{
name = "zhangsan";
password = "123" ;
}
public User() {
}
public void setName(String name) {
this.name = name;
}
public void setPassword(String password) {
this.password = password;
}
@Override
public String toString() {
return "User{" +
"name='" + name + '\'' +
", password='" + password + '\'' +
'}';
}
}
内部类
类的特点
封装
public class Animal {
public String name; //公开
protected String password; //受保护
private String phone; //私有
String gender; //缺省
}
继承
继承是一个对象获取父对象的所有属性和行为的机制。 它是面向对象编程系统(OOP)的重要组成部分。 Java中继承的思想是,创建基于现有类的新类。 从现有类中继承,可以重用父类的方法和字段。 此外,还可以在当前类中添加新方法和字段。
public class Dog extends Animal{
public void show(){
System.out.println("Dog can dance");
}
}
多态
public class DogTest {
public static void main(String[] args) {
Animal cat = new Cat();
}
}
多态使用的必要条件
Bean类
public class Person {
private String name;
private String password;
public Person() {
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
}