zoukankan      html  css  js  c++  java
  • 面向对象的封装性及权限修饰符

    面向对象的封装性:

    /*
    面向对象的特征一:封装与隐藏
    问题:创建类的对象以后如果直接用”对象.属性“ 的方式对相应的对象属性赋值的话,可能
               出现不符合实际情况的意外,所以使用通过对象.方法的形式,来控制对象对属性的访问。
               实际情况中,对属性的要求就可以通过方法来体现
               
    解决的方法:(封装性的思想) 将类的属性私有化,提供公共的方法(setter& getter)来调用   
    
     二:权限修饰符: 可以修饰属性和方法
                   private   
                   缺省   
                   protected 
                   public
    
     
     */
    public class TestAnimal {
        public static void main(String[] args) {
            Animal a = new Animal();
            // a.legs = -4;
            // a.name="小白"; 属性声明为private出了他的这个类不能直接调用 得用方法调用
            a.setLegs(4);
        }
    }
    
    class Animal {
    
        private String name;
        private int legs;
    
        public void eat() {
            System.out.println("吃");
        }
    
        public void sleep() {
            System.out.println("睡觉");
        }
    
        public void info() {
            System.out.println("name:" + name + "legs:" + legs);
        }
    
        //设置类的属性
        public void setLegs(int m) {
            if (m > 0 && m % 2 == 0) {
                legs = 1;
            } else {
                System.out.println("输入有误");
            }
        }
        //获取类的属性
        public int getLegs() {
            return legs;
        }
    
        public void setName(String n) {
            // . . . .
            name = n;
        }
    
        public String getName() {
            return name;
        }
    }

    权限修饰符:

    注意:

    对于class的权限修饰符只可以用public和default(缺省)

    public类可以在任意地方被访问

    default类只可以被同一个包内部的类访问

    All that work will definitely pay off
  • 相关阅读:
    rowid去重(转)
    Oracle中 row_number() over()分析函数(转)
    oracle分页计算公式
    vue 生产环境和线上环境配置
    vue postcss 样式等比缩放
    element-ui 表单输入手机号验证是否注册或者存在
    使用vue-qr 生成 二维码
    vue下载excel文件,后台传过来的是文件流解决办法
    前端请求接口发送的路径用域名代替ip
    将本地端口映射子域名
  • 原文地址:https://www.cnblogs.com/afangfang/p/12485065.html
Copyright © 2011-2022 走看看