• java面向对象------- 封装


    一、封装访问控制符

         本类     同一包下(子类和无关类)  不同包下(子类)   不同包下(无关类)

    Private    y

    默认        y              y

    Protect     y              y                       y

    Public      y              y                      y                   y


    package java面向对象;

    /**
    * 测试封装,private
    */
    public class TestEncapsulation {
    public static void main(String[] args) {
    Human h=new Human();
    //h.name="hahah";对象不能使用类中私有属性

    }
    }

    class Human{
    private String name;
    int age;
    void sayName(){
    System.out.println(name);
    }
    }

    class Boy extends Human{

    void sayhello(){
    // System.out.println(name);//子类无法使用父类的私有属性和方法
    }

    }

    二、封装细节的使用
    package java面向对象;

    /**
    * 测试封装使用细节
    */
    public class Person2Encapsulation {
    private int id;
    private String name;
    private int age;
    private boolean man;
    //外部要使用这些属性时,调用set个get方法
    public void setName(String name){
    this.name=name;
    }
    public void setAge(int age){
    if(age>=18&&age<=130){
    this.age=age;
    }
    else {
    System.out.println("请输入正常年龄");
    }

    }

    public int getAge() {
    return this.age;
    }

    public static void main(String[] args) {
    Person2Encapsulation p2=new Person2Encapsulation();
    //通过set方法操作类中私有属性,必须符合类中的设置的要求
    p2.setAge(20);
    //通过get方法获取私有类中的属性
    System.out.println(p2.getAge());

    }
    }
  • 相关阅读:
    用Instant client批量安装Oracle客户端安装配置
    Oracle case when 用法(转)
    C# 读写ini文件 【转】
    oracle数据库删除数据Delete语句和Truncate语句的对比
    C#使用instantclient连接 Oracle 10g (转)
    SQL Server CONVERT() 函数
    c#格式化数字(转)
    InstantClient安装使用 (转)
    C# 四个字节十六进制数和单精度浮点数之间的相互转化
    oracle case when的使用方法
  • 原文地址:https://www.cnblogs.com/zzzao/p/10890410.html
Copyright © 2020-2023  润新知