我是靠谱客的博主 娇气小兔子,最近开发中收集的这篇文章主要介绍【Java】 Notes and Insights 8 【面向对象 封装 数据与行为 private关键字 过滤通道 this关键字 构造方法 成员变量初始化 构造方法的重载】封装封装思想this 关键字构造方法(一种特殊的方法)构造方法的重载,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

封装

需求 事物 行为 归属
面向对象程序员
多多查阅 JDK-API文档.CHM
Java已经设计好了许许多多的对象,只需将处理的数据交给它,调用其中的操作即可,不需要自己去写代码

面向对象的三大特征封装 继承 多态

封装 告诉我们如何正确设计对象的属性和方法
对象代表什么,就得封装对应的数据,并提供数据对应的行为

public class Circle {
    
    double radius;
    
    public void draw(){
        sout("根据半径" +  radius + "画一个圆")
    }
}

只是调用了圆的一个方法去画了一个圆而已

面向对象的程序设计
类比于人给门一个作用力,门自己关上了(门会封装一个状态数据)
网络编程也需要Socket对象来进行网络连接

封装思想

创建对象调方法即可
对象代表什么,就得封装对应的数据,并提供数据对应的行为
这实际上大大降低了我们学习的成本

我们有许许多多的对象,每个对象中也拥有许许多多的方法
例如String 用来代表需要操作的字符串

面向过程去编程(主要是C语言)就是分析出解决问题所需要的步骤,然后用函数把这些步骤一步一步实现,使用的时候一个一个依次调用就可以了。
而面向对象(c++,c#,java,delphi)是把构成问题事务分解成各个对象,建立对象的目的不是为了完成一个步骤,而是为了描述某个事物在整个解决问题的步骤中的行为。

我们所面对的是一堆对象 ,一堆方法
我们的JDK-API文档.CHM就相当于字典
有什么事情,找对象,调方法
从而写出安全健壮的代码

private 关键字

  • 是一个权限修饰符 同 public
  • 可以修饰成员(也即成员变量和成员方法)
  • 被 private 修饰的成员只能在 本类 中才能访问 (私有) 不让外界直接访问
  • public 表示在所有的类当中都可以使用其修饰的成员

正确的可以赋值,错误的不可以
导致每次判断不方便,还是 private 私有掉比较好(数据安全)

过滤通道

Java中当定义了一个私有的成员变量的时候,如果需要访问或者获取这个变量的时候,就可以编写 set 或者 get 方法去调用,set 是给属性赋值的,get 是取得属性值的,被设置和存取的属性一般是私有的,主要是起到封装作用不允许直接对属性进行操作
在类中使用 set 和 get 方法时,都是在 set 和 get 后面跟上一些特定的词来形成特定意思的方法名,比如 setAge () 和 getAge (),表示设置年龄和获取年龄
setAge 赋值通道
getAge 获取通道
通过private私有关键字保证数据的安全性
通过get() or set(参数) 方法 (都用public修饰) 来进行数据传递(访问 操作)
同时在方法里可以进行判断

this 关键字

set 赋值 get 提供返回值(获取

局部变量 :定义在方法里面
成员变量 :定义在类里面,方法的外面

重名时就近原则

public class GirlFriend {
		private int age; // 成员变量
		public void method(){
			int age = 10; // 局部变量
			System.out.println(this.age);
		}
}

就近原则 : 谁离我近 , 我就用谁
this.关键字:直接使用成员位置的变量(打破默认的就近原则)

构造方法(一种特殊的方法)

也即 构造器 构造函数
作用:在创建对象的时候给成员变量进行初始化(赋值)的

    修饰符 类名(参数) {
         方法体;
    }

 public Student(String name, int age) {
        this.name = name;
        this.age = age; // 直接保证赋值给成员变量
    }

特点:

  1. 方法名与类名相同,大小写也一致
  2. 没有返回值类型,连void都没有(函数没有返回值)
  3. 没有具体的返回值(不能由 return 带回结果数据)

空参构造方法
带全部参数构造方法

创建对象时的执行时机

  1. 创建对象的时候,由虚拟机调用不能手动调用构造方法
  2. 每创建一次对象,就会调用一次构造方法

默认无参的构造方法取决于是否自己定义构造方法(Java会默认添加)

构造方法的重载

  • 带参构造方法,和无参构造方法,二者方法名相同,但是参数不同,也即构造方法的重载
    推荐:无论是否使用,都手动书写无参构造方法,和带全部参数的构造方法
    方便于实际开发和团队作业
    构造方法的作用: 在创建对象的时候,由虚拟机自动调用,给成员变量进行初始化
    由于Java的默认设置,任何类定义出来就自带了无参构造器
    一旦定义了有参构造器,无参构造器就没有了,此时就需要自己写无参数构造器了,这非常重要

然而调用构造方法 只是 创建对象的一步 而已

最后

以上就是娇气小兔子为你收集整理的【Java】 Notes and Insights 8 【面向对象 封装 数据与行为 private关键字 过滤通道 this关键字 构造方法 成员变量初始化 构造方法的重载】封装封装思想this 关键字构造方法(一种特殊的方法)构造方法的重载的全部内容,希望文章能够帮你解决【Java】 Notes and Insights 8 【面向对象 封装 数据与行为 private关键字 过滤通道 this关键字 构造方法 成员变量初始化 构造方法的重载】封装封装思想this 关键字构造方法(一种特殊的方法)构造方法的重载所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(43)

评论列表共有 0 条评论

立即
投稿
返回
顶部