java的封装(笔记)

一、前言

希望自己能够坚持~~~

二、封装

  1. 封装的概念
    封装就是将属性和方法私有化。
  2. 封装的作用
    封装的目的在于保护数据,区分设计者和使用者。
  3. 封装的实现
    封装通过private关键字来实现,被封装的属性和方法只能在该类中被访问。
    外部若想访问类中的属性和方法必须通过外部接口。例如:在其他公有方法中调用私有属性和方法、通过get和set方法来获取和设置私有属性

Author.java

public class Author{
    private String name;
    private int age;
    public String getName(){
        return name;
        }
}

Test.java

public class Test{
    public static void main(String[] args){
        Author author=new Author();
        System.out.println(author.name);//会报错,因为变量是私有的无法访问
        System.out.println(author.getName());//不会报错,得到的值为null
    }
}

三、设计模式—桥模式

目的是将抽象化与实现化脱耦,使得二者可以独立地变化。
这里写图片描述

四、static

  1. 简介
    static,静态的意思。可以修饰类中属性,称之为类变量、静态变量。修饰类中的方法,称之为类方法、静态方法。
  2. 特点
    当加载一个类时,首先加载的是类中所有的静态变量和静态方法。
    静态变量和静态方法只能在静态方法中调用。
    静态变量做好不要经常使用,它不会被自动回收。java有垃圾回收机制(当对象不可达时,也就是超出作用域的范围,自动回收垃圾)

    3.运行机制
    Author.java

public class Author{
    static String NAME;
    static {
        System.out.println("执行静态代码1");
        System.out.println(Author.NAME);//静态变量和静态方法可以直接使用类名调用
    }
    static {
        System.out.println("执行静态代码2");
    }
    public Author(){
        System.out.println("执行构造函数");
    }
    public static String getName(){
         return NAME;//静态变量不可以用this指向
    }


}

Test.java

public class Test{
    Author author=new Author();
    System.out.println(author.getName());
}

执行的结果
执行结果
PS: 当调用构造函数的时候JVM做了什么事情
a、加载类
b、初始化类中所有static修饰的属性和方法按书写顺序执行
c、初始化所有的属性和代码块、按书写顺序执行
d、调用构造函数

五、final

  • 可以修饰属性、方法和类

    • 修饰属性必须有初始值,值不可改变,相当于常量

    • 修饰的方法不能被重写

    • 修饰的类不能被继承

猜你喜欢

转载自blog.csdn.net/weixin_37044203/article/details/81389674
今日推荐