• java面向对象之封装


    封装,是面向对象思想的特征之一

    封装表现:
      1、方法就是一个最基本封装体。
      2、类其实也是一个封装体。
    封装的好处:
      1、提高了代码的复用性。
      2、隐藏了实现细节,还要对外提供可以访问的方式。便于调用者的使用。这是核心之一,也可以理    解为就是封装的概念。
      3、提高了安全性。

    例子:

    package com.oracle.demo2;
    
    public class Person {
        //私有:private 关键字  把变量还有方法私有化,外界不能访问
            //只能在本类中访问。
            //封装:隐藏实现细节,对外提供访问方式
        private String name;//类中基本特征
        private int age;
        //无返回值,利用形参接收参数,进行赋值
        public void setName(String n){
            this.name =n;
            
        }
        //有返回值,利用调用方法,方法给出返回值,再还给调用地方
        public  String getName(){
            return name;
        }
        //无返回值,利用定义形参a来接收实参传的值,再进行运算判断
        public void setAge(int a){
            //给创建的新对象的年龄的属性值设置范围权限
            if(a>=0&&a<=120){
                this.age =a;
            }else{
                this.age =0;
            }
            
            
        }
        //创建类中对象的说话功能
        public void speak(){
            System.out.println("我叫"+name+",今年"+age+"岁了");
            
        }
        public boolean compare(Person p){
            return p.age ==this.age;
        }
        
        
    }

    测试类:

    package com.oracle.demo2;
    
    public class Test {
    
        public static void main(String[] args) {
            //创建新对象
            Person p1 = new Person();
    //        p1.name="雄大";
    //        p1.age=22;
            p1.setAge(18);//调用添加赋值方法,利用实参传递值
            p1.setName("熊大");
            Person p2 =new Person();
    //        p2.name= "熊二";
    //        p2.age=11;
            p2.setAge(-12);
            p2.setName("熊二");
            System.out.println(p1.getName());//打印,调用显示方法
            p1.speak();//调用类中说话功能
            p2.speak();
            p1.compare(p2);//比较对象p1和对象p2
            System.out.println(p1.compare(p2));
        }
    
    }

    结果演示:

    this关键字 

      注意:

      当在方法中出现了局部变量和成员变量同名的时候,可以在成员变量名前面加上this.来区别成员变量和局部变量

    总结:
      1.面向对象和面向过程,举例理解,知道区别
      2.在新建类中有成员变量和成员方法,
      3.成员变量和局部变量区别,成员变量存储在堆里,局部变量存储在栈,方法里
      4.成员变量在堆里默认赋初值
      5.私有private 关键字  ,把变量,方法私有化,外界不能访问,只能在本类中访问。
      6.封装,隐藏实现细节,对外提供访问方式
      7.类和对象的区别,对象进堆,类是抽象的,对象是具体的,对象是类的一个实例,对象继承类的方法和属性
      8.面向对象基本特征,继承,封装,和多态

  • 相关阅读:
    黄聪:VS中 "Duplicate items are not supported by the "Resources" parameter" 解决方法
    黄聪:新浪编辑器 SinaEditor
    黄聪:Delphi实现软件中登录用户的操作权限
    黄聪:Asp.Net性能优化
    黄聪:SQL Server 2005开窗函数的使用
    黄聪:Delphi 连接DBF数据
    黄聪:OpenGl 初级入门学习视频教程, 绘制一个立方体
    黄聪:再议.Net中null的使用规范
    黄聪:.NET开发中的Exception处理三定律[转]
    黄聪:SQL Server 开发之 复制表数据的SQL脚本生成器
  • 原文地址:https://www.cnblogs.com/lzw123-/p/9371536.html
Copyright © 2020-2023  润新知