zoukankan      html  css  js  c++  java
  • 面向对象(封装的概述)

    封装概述

    • 是指隐藏对象的属性和实现细节,仅对外提供公共访问方式。

    封装好处

    • 隐藏实现细节,提供公共的访问方式
    • 提高了代码的复用性
    • 提高安全性

    封装原则

    • 将不需要对外提供的内容都隐藏起来
    • 把属性隐藏,提供公共方法对其访问

    private关键字的概述和特点

    • 是一个权限修饰符
    • 可以修饰成员变量和成员方法
    • 被其修饰的成员只能在本类中被访问

    案例演示

    • 把成员变量用private修饰
    • 提供对应的getXxx()和setXxx()方法
    • private仅仅是封装的一种体现形式,不能说封装就是私有
        public static void main(String[] args) {
            Person p1 = new Person();
            p1.name = "zhang";  //调用姓名属性并赋值
        //    p1.age = 23;        //调用年龄属性并赋值
        //    p1.speak();            //调用行为
            
            p1.setAge(-1);
            System.out.println(p1.getAge());
        }
    }
    
    class Person{
        String name;
        private int age;
        
        public void setAge(int a) {
            if (a > 0 && a < 200) {
                age = a;
            }else {
                System.out.println("重设");
            }
        }
        
        public int getAge() {
            return age;
        }
        
        public void speak() {
            System.out.println(name + "..." + age);
        }
    }

    this关键字的特点

    • 代表当前对象的引用

    案例演示

    • this的应用场景
    • 用来区分成员变量和局部变量重名
    public class This {
        public static void main(String[] args) {
            Person p1 = new Person();
            p1.setName("zhang");
            p1.setAge(23);
            System.out.println(p1.getName() + "..." + p1.getAge());
        }
    }
    class Person{
        private String name;
        private int age;
        
        public void setAge(int age) {
            if (age > 0 && age < 200) {
                this.age = age;
            }else {
                System.out.println("重设");
            }
        }
        
        public int getAge() {
            return age;
            
        }
        
        public void setName(String name) {
            this.name = name;
        }
        public String getName() {
            return name;
        }
    }
  • 相关阅读:
    设计师用的几个网站
    微信小程序开发框架
    数据模型
    数据库系统
    大话设计模式读书笔记(一)
    关于数据统计时的效率
    orcale同一条语句运行速度差异问题
    使用plspl创建orcale作业
    正则表达式(一)
    oracle游标小试
  • 原文地址:https://www.cnblogs.com/happystudyhuan/p/10702541.html
Copyright © 2011-2022 走看看