123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136 |
- package com.sf.ioc.simple;
- // 面向对象
- // 类里面有什么 (成员)
- // 属性(变量 基础数据类型 or 引用数据类型)
- // 行为(方法/函数 方法名 + 形参「构成重载」 返回类型 return)
- // 一定是被类或者对象调用 static修饰的被类调用 其他都是被对象调用的
- // 先有类后有对象 静态的只能调用静态的 非静态的都可以调用
- // 类或者属性或者方法 不想被修改的时候 通过final修饰
- // 类被修改 叫做继承 方法被修改 叫做重写 属性被修改 叫做赋值
- // 构造器(特殊的方法) new调用的 new出来的对象 放在了“堆”中
- // “栈”和“堆” 一个相对较小 一个相对较大
- // 所谓的垃圾回收 是把放在堆中的对象 不再使用的识别为垃圾 进行回收
- // 无参构造器 和 有参构造器(全参构造器)
- // A类继承B类的时候 new A() 会默认调用父类的构造器
- // 代码块 只能被static修饰 变成静态代码块 非静态代码块 其实就是所有构造器中重复逻辑的抽离
- // 所以也叫初始化块 父类有静态代码块 非静态代码块 构造器 子类有静态代码块 非静态代码块 构造器
- // 内部类
- // 封装 private String name; get和set方法 JavaBean
- // 属性和方法
- // 多态 instanceof 在继承的情况下 A extends B; B b = new A();
- // 在接口实现的情况下 C implements D; D d = new C();
- // b instanceof A
- // d instanceof C
- // Object类
- // hashCode() equals() toString()
- public class User {
- // 修改类结构的时候
- // 声明属性 添加get set 添加全参构造器 重写toString
- private String name;
- private String desc;
- // User类有一个属性 Role类的对象
- // zhangsan "admin"
- private Role role;
- // Auth类的对象
- // zhangsan "CRUD"
- private Auth auth;
- {
- // System.out.println("User");
- }
- public User() {
- System.out.println("User");
- // this.name = "name";
- }
- public User(String name) {
- System.out.println("User by name");
- this.name = name;
- }
- /**
- * <bean id="user1" class="com.sf.simple.User">
- * <constructor-arg name="desc" value="nothing"></constructor-arg>
- * <constructor-arg name="name" value="lisi"></constructor-arg>
- * </bean>
- *
- * @param name
- * @param desc
- */
- public User(String name, String desc) {
- System.out.println("User by name and desc");
- this.name = name;
- this.desc = desc;
- }
- public User(String name, String desc, Role role) {
- this.name = name;
- this.desc = desc;
- this.role = role;
- }
- // public User(String desc, Role role, String name) {
- // this.name = name;
- // this.desc = desc;
- // this.role = role;
- // }
- public User(String name, String desc, Role role, Auth auth) {
- this.name = name;
- this.desc = desc;
- this.role = role;
- this.auth = auth;
- }
- public Role getRole() {
- return role;
- }
- public void setRole(Role role) {
- System.out.println("User setRole ");
- this.role = role;
- }
- public String getName() {
- return name;
- }
- public void setName(String name) {
- System.out.println("User setName ");
- this.name = name;
- }
- public String getDesc() {
- return desc;
- }
- public void setDesc(String desc) {
- System.out.println("User setDesc ");
- this.desc = desc;
- }
- public Auth getAuth() {
- return auth;
- }
- public void setAuth(Auth auth) {
- System.out.println("User setAuth ");
- this.auth = auth;
- }
- @Override
- public String toString() {
- return "User{" +
- "name='" + name + '\'' +
- ", desc='" + desc + '\'' +
- ", role=" + role +
- ", auth=" + auth +
- '}';
- }
- }
|