`
l4432848
  • 浏览: 255074 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Java基础——构造器重载 & this关键字

    博客分类:
  • java
 
阅读更多

声明:本栏目所使用的素材都是凯哥学堂VIP学员所写,学员有权匿名,对文章有最终解释权;凯哥学堂旨在促进VIP学员互相学习的基础上公开笔记。

构造器重载:

构造器和方法一样,就是方法的变化。
构造器重载跟方法重载一样:方法名一样,参数类型或参数个数不一样。

构造器重载申明方式:

image

image

String字符串:
它的存储方式不是固定的,多与少要看存储的内容来判定。
字符串提供多个字符串就是满足不同的需求,创建更多的方式。
低版本: String里面就是一个char数组
高版本: String里面就是一个byte数组

image

构造器应用:

image

this关键字: 1.当前对象,给我们专门在实例成员中获得当前运用的对象。
2.不同区域中可以重名
3就近原则:使用的变量名称永远是先考虑最近的
4.如何在实例成员中获得运行实例成员的对象呢?写上this就是获得当前运行对象

不同区域重名(实例成员):相当于name给回了name,所以没有意义。

image

(静态成员)决解不同区域重名方案:用类名.点type,类名点的是属性type,把属性type赋值给了方法中的type。

image

(实例成员)决解不同区域重名方案:如何在实例方法中拿到当前对象?所以java发明了一个关键字(this当前对象),通过this就可以拿到当前对象。

image

例题1:this是变化的,它只获得当前值运行的对象。所以新new了一个对象,this所获得的对象是“徐涛”对象。

image

例题2:当前对象是new出来的c,把小花交给了name,所以this所获得的当前对象是c。

image

例题3:Test3会报错,Test4不会报错。
Test3是实例成员,它会发生死循环,没次new的时候有产生一个对象,对象有new有在产生一个对象,所以会产生死循环。
Test4是静态成员,只加载一份,new Test4只会产生一份而已。

image

0
0
分享到:
评论

相关推荐

    Java 语言基础 —— 非常符合中国人习惯的Java基础教程手册

    面向对象编程的基础 要了解面向对象编程(OOP)的基本概念,需要理解 OOP 的三个主要概念,它们撑起 了整个 OOP 的框架。这三个概念是:封装、继承性和多态性。除此以外,还需了解对象、 类、消息、接口、及抽象等...

    JAVA编程基础-05面向对象基础-zhouxl.pdf

    ### JAVA编程基础——面向对象基础 #### 面向对象编程思想 面向对象编程(OOP)是一种编程范式,它将计算机程序设计成由多个相互交互的对象组成。这种编程方式模仿了现实世界的运作方式,使得程序员能够以更直观、更...

    java基础的ppt文件学习

    同时,会涵盖构造函数,this关键字,static关键字的用法。 4. **访问修饰符**:public, private, protected和默认(包访问权限)的区别及其应用场景。 5. **方法**:包括方法的定义、重载和重写,以及如何进行参数...

    Java基础核心知识点总结(79页).pdf

    初始化有多种方式,如成员初始化块、构造器初始化块,以及初始化顺序规则。对象的作用域包括局部、成员和静态。this关键字用于引用当前对象,super用于访问父类的成员。 Java的访问控制权限有public、private、...

    Java程序员面试宝典——2012版

    《Java程序员面试宝典——2012版》是一份针对Java程序员面试的全面指南,旨在帮助准备面试的程序员深入理解和掌握Java的核心概念和技术。以下是对该文档标题、描述及部分内容涉及的重要知识点的详细解析: ### Java...

    JAVA编程基础-06面向对象高级特性-zhouxl.pdf

    ### JAVA编程基础——面向对象高级特性 #### 第六章 面向对象高级特性 本章节将详细介绍Java中面向对象的高级特性,包括类的继承、封装、多态、抽象类、接口以及内部类等内容。通过学习这些概念,读者能够更好地...

    精华 笔记 使用Java实现面向对象编程

    - **Constructor (构造器)**: 类的一个特殊方法,用于创建并初始化对象。构造器的名字必须与类名相同,且没有返回类型。 - **Encapsulation (封装)**: 如上所述,封装是隐藏对象的实现细节,仅暴露必要的接口。 -...

    Java初学者的天堂_面向对象基础_ppt

    理解构造器的用途,以及如何使用this关键字和super关键字在对象间传递信息也是学习的重点。 接口在Java中扮演着重要角色,它是实现多继承的一种方式。接口定义了一组抽象方法,类可以实现接口并提供这些方法的具体...

    JAVA面向对象基础总结笔记

    3. **构造器**:通过构造器可以对对象进行初始化。 ```java public Person(String name, int age) { this.name = name; this.age = age; } ``` 4. **final关键字**:可以用来修饰变量、方法或类,使其不可...

    JAVA入门1.2.3:一个老鸟的JAVA学习心得 PART1(共3个)

    3.4 小结:基本数据类型—— Java中一切数据和运算的基础 63 3.5 习题 65 第4章 Java中的程序执行流程 67 教学视频:1小时57分钟 4.1 顺序执行 67 4.2 使用if-else让程序懂得判断 68 4.2.1 if语句 68 4.2.2 ...

    MLDN魔乐JAVA_06类设计题目.rar

    在本资源"MLDN魔乐JAVA_06类设计题目.rar"中,主要涉及的是Java编程语言中的核心概念——类的设计。类是面向对象编程的基础,它定义了对象的属性和行为,使得代码结构化、模块化。在这个压缩包里,可能包含了一系列...

    JAVA面向对象程序设计练习题库.zip

    每个类至少有一个构造器,可以通过`this`关键字调用其他构造器,或者使用`super`调用父类的构造器。 8. **异常处理**:Java提供了异常处理机制,通过try-catch-finally语句块捕获并处理运行时可能出现的错误。异常...

    java2实用教程电子教案.txt

    - 构造器的概念,构造器的重载与重写。 - **4.13.1 构造器的使用** - 构造器的基本使用方法。 - **4.13.2 构造器的重载** - 在同一类中定义多个构造器的方法。 - **4.13.3 构造器的重写** - 子类重写父类构造器...

    Java入门1·2·3:一个老鸟的Java学习心得.PART3(共3个)

    3.4 小结:基本数据类型—— Java中一切数据和运算的基础 63 3.5 习题 65 第4章 Java中的程序执行流程 67 教学视频:1小时57分钟 4.1 顺序执行 67 4.2 使用if-else让程序懂得判断 68 4.2.1 if语句 68 4.2.2 ...

    Java实战入门[一个资深Java培训老师倾力收藏].pdf

    第三章“登录界面开发”通过实践项目让读者了解如何利用Swing构建图形用户界面(GUI),包括构造器方法的使用、方法的重载、this关键字以及值传递和引用传递的区别。通过这个项目,读者能够掌握GUI编程的基本技能。 ...

    第一行代码Java源代码第4章课程代码面向对象高级知识

    5. **构造器与this关键字**:构造器是用于初始化新创建对象的特殊方法,Java中的this关键字用于引用当前对象。 6. **访问控制与权限修饰符**:Java提供了private、protected、public以及默认(包级私有)四种访问...

    JAVA面向对象编程思想

    2. **实例化**:使用`new`关键字为对象分配内存,并调用构造器初始化对象。 3. **初始化**:构造器用于初始化对象的状态。 **示例**: ```java public class Student { private String name; private int age; ...

    javaoop文档+阅读器

    Java中的`this`关键字用来引用当前对象,`super`关键字用于访问父类的成员。 接口(interface)在Java中是完全抽象的,只包含抽象方法和常量,它实现了多继承的概念。Java 8引入了默认方法和静态方法,增强了接口的...

    Java JDK 6.0学习笔记

    封装涉及如何使用类来定义对象,包括类成员(如字段和方法)、构造器、this关键字和静态成员。方法的重载允许根据不同的参数列表定义多个同名方法,不定长度自变量提供了一种灵活的参数传递方式。递归方法则展示了...

    java学习笔记-基础

    ### Java学习笔记——基础知识详解 #### 一、Java开发环境(JDK)与运行环境(JRE) Java技术的核心在于其强大的跨平台能力,这主要得益于Java的两大环境:JDK(Java Development Kit)和JRE(Java Runtime ...

Global site tag (gtag.js) - Google Analytics