`
烧杯小盆友
  • 浏览: 5228 次
  • 性别: Icon_minigender_2
  • 来自: 长沙
最近访客 更多访客>>
社区版块
存档分类
最新评论

构造函数,this关键字,多态,引用传递,值传递

阅读更多
构造函数(构造器、构造方法)
1.怎么去理解构造器
  每个类创建时都会有一个默认的构造方法,而且是无参构造方法,
构造方法结构:访问权限  类名(){}//默认的构造函数在没有重载的构造函数的时候,写不写出来都是可以的,但是有了重载的构造函数,就必须列出来,否则报错。
构造方法作用:用来创建对象,//构造函数重载的话使对象实例化的时候,使对象生来具有某些特性,也可以在重载的构造函数中加入其它的代码,实现某些功能。
2.方法的分类和方法的重载
方法分类:构造方法,普通方法,抽象方法
   方法重载:两个方法的方法名字一样,但是方法中参数个数或者参数类型、参数顺序不一样//只和参数不同有关,和返回类型等等没有任何关系
   一旦重载了构造方法,默认无参构造方法不存在
3.this关键字

4. 变量分为全局变量和局部变量
全局变量又称为属性
参数,方法小括号中的变量
//变量有就近原则,如果用了this,那么就

5.值传递和应用传递
值传递适用于java中的基本数据类型和String(String定义的时候必须是:String str = "";String str; str = "";)
基本数据类型有8个:
byte    字节型       8bit     -128~127
short   短整型      16bit
int     整型          32bit
long    长整型      64bit
float   浮点型   单精度         32bit
double  浮点型  双精度          64bit
char    字符型       16bit
boolean 布尔型       true和false
值传递是将变量i中的值拷贝一份,存入到参数score中,此时两个变量中存储的值相同,但是是在不同的内存空间中,此时对其中的任何一个做修改,都不会影响到另外一个。

引用传递适用于java的引用数据类型(又叫做类类型,对象类型,复杂数据类型,自定义数据类型),都是用class定义的类和数组
String str = new String();
String str ;
str = new String();
引用传递是将对象名stu1中存储的内容首地址,拷贝一份存入到stu2中,此时两个对象名指向了同一个对象,是用其中的一个对象名将对象的属性修改后,那么另外一个对象名的
也会跟着改变。

关于父类子类,继承:
1.继承
  被继承的类:父类
  继承的类:子类
  访问权限:public :同一个工程下面任何一个类,都能用对象调用到
          protected:同一个包下的任何一个类,不同包下的子类能用对象调用
                          默认:只在同一个包下能使用到
          private:同一个类
  子类继承父类,到底继承到了什么??继承到了父类的非私有的属性和方法
2.方法重写
方法重写注意:方法名字返回类型参数必须和父类方法一样,访问权限只能扩大或者不变,不能缩小
如果子类对象重写了父类的方法,子类对象调用的是重写后的方法
3.自动转型:子类自动转型为父类
4.多态
5.接口\抽象类,不能被实例化
接口:很抽象的一个类,接口中的方法都是抽象方法,接口中的属性都是常量,所有属性和方法都是公有的
抽象类:既允许存在抽象方法,也允许存在普通方法;属性没有限制
普通类:不允许存在抽象方法
分享到:
评论

相关推荐

    java代码笔记2010-05-31:继承this()的使用多态;单态;静态初始化;==比较的是地址;参数传递的是个值的拷贝还是引用的传递;循环菱形

    在Java编程语言中,本文将深入探讨几个关键概念,包括继承中的`this()`构造器调用、多态性、单态设计模式、静态初始化、对象引用的`==`比较以及参数传递机制。这些知识点是Java程序员必备的基础知识,对理解和编写...

    java构造函数示例(构造方法)

    在实际编程中,构造函数还可以根据需要设计为多态,即一个类可以有多个构造函数,每个接受不同数量或类型的参数。这种称为构造函数重载,它提供了更大的灵活性,以适应不同的初始化需求。总之,掌握Java构造函数的...

    毕向东java视频教程05章

    3. 传递参数:在方法或构造函数中,`this`可以作为参数传递,将当前对象传递给其他方法或类,方便进行方法链式调用或者在内部类中引用外部类的成员。 4. 返回当前对象:`this`也可以用于返回当前对象,常用于方法的...

    C#THIS用法.pdf

    【C# THIS关键字详解】 在C#编程语言中,`this`和`base`都是关键字,它们在面向对象编程中扮演着重要的角色。下面将详细解释这两个关键字的用途和应用场景。 1. `base`关键字: `base`关键字主要用于在派生类中...

    解析 this.initialize.apply(this, arguments)

    `this` 关键字在JavaScript中扮演着核心角色,它指的是函数调用时的上下文,而 `initialize` 通常是一个构造函数,`apply` 是一个内置方法,用于改变函数调用时的上下文(`this` 值)并传入参数。 首先,让我们理解...

    c++期末复习清华大学华中科技大学

    在这篇文章中,我们将对清华大学计算机系 C++期末考试题进行总结和分析,涵盖了面向对象程序设计、函数参数传递、拷贝构造函数、静态数据成员、继承、多态、_OVERRIDE_、抽象类、const关键字、用户自定义数据类型、...

    c++面向对象复习题答案版要点.docx

    构造函数负责对象初始化,常量和引用数据成员需在构造函数初始化列表中处理。protected成员对派生类可见,对外部不可见。setprecision和hex是I/O流操纵符,分别用于设置输出精度和十六进制格式。 C++中,数组名作为...

    c++面向对象复习题答案版要点.pdf

    在函数参数传递中,数组、指针和引用都可以用来传递值。内联函数用于减少函数调用的开销,通过在函数类型前添加inline关键字。拷贝构造函数用于对象的复制,系统默认拷贝构造函数会逐个复制数据成员。new运算符用于...

    郝斌java视频笔记.doc

    在郝斌的Java视频笔记中,涵盖了多个重要的Java概念,包括访问控制符、构造函数、函数重载、this关键字、static修饰符、继承、函数重写、多态、抽象类和接口。 1. **访问控制符**:Java提供了四个访问控制符:...

    清华大学计算机系C++试题及答案.pdf

    4. 拷贝构造函数:拷贝构造函数用于初始化新对象,它使用已存在的对象的引用作为参数。 5. 继承的访问权限:在公有继承下,基类的公有和保护成员在派生类中保持原有访问级别。 6. 条件表达式:在C++中,表达式"A||...

    Java 实例 - Enum(枚举)构造函数及方法的使用源代码-详细教程.zip

    枚举构造函数主要用于初始化枚举实例的内部状态,但需要注意,构造函数不能被外部直接调用,只能在枚举实例的定义中使用。例如: ```java public enum Color { RED(1), GREEN(2), BLUE(3); private int value; ...

    JavaScript面向对象编程指南.pdf

    6. this关键字:在JavaScript中,this关键字用来引用当前执行上下文的对象。在构造函数、普通函数和箭头函数中,this的指向是不同的。理解this关键字有助于掌握JavaScript中对象的使用和方法的调用。 7. 高阶函数:...

    c++面向对象复习题答案版 (2).pdf

    13. 拷贝构造函数参数:拷贝构造函数通常接收一个对同类对象的引用,用于初始化新对象。 14. 继承的访问权限:在公有继承下,基类的公有和保护成员在派生类中保持相同的访问权限。 15. 构造顺序:构造派生类对象时...

    Super关键字的几点应用

    最后,"super"关键字与Java的this关键字相对应,this代表当前对象,而super则代表当前对象的父类对象。两者都是为了在多态和继承环境中明确指代对象的类型。 总结来说,"super"关键字在Java中主要应用于以下方面: ...

    C++期末考试题.docx

    4. 拷贝构造函数:拷贝构造函数是一个特殊的构造函数,它接受一个类类型的引用作为参数,用于初始化新创建的对象,通常用于复制已有对象。 5. 访问权限继承:在公有继承中,基类的公有和保护成员在派生类中保持相同...

    C++面试题

    C++面试题中涉及的知识点广泛且深入,包括面向对象编程的基本概念、类与对象的关系、成员函数与构造函数的特点、继承与多态的实现、以及运算符重载等高级特性。下面将具体解析这些知识点。 首先,面向对象程序设计...

    清华大学计算机系C++期末考试题及答案.pdf

    4. 拷贝构造函数:拷贝构造函数用于通过已存在的对象初始化新创建的对象,其参数通常是一个类类型的引用。 5. 访问权限继承:在公有继承下,基类的公有成员在派生类中仍然是公有的,保持不变。 6. 逻辑运算符:...

    C++考试题共三套附答案

    以上内容涵盖了C++的一些基础知识点,包括函数参数传递、对象、继承、多态、构造函数、析构函数、逻辑运算、静态成员、输入输出以及代码复用策略。通过理解和掌握这些知识点,能有效提高C++编程能力。

    c++面向对象复习题答案版 (2).docx

    拷贝构造函数使用引用参数初始化新对象。公有继承下,基类的访问权限不变,派生类对象构造时从基类开始。统计对象个数用静态数据成员,多重继承时使用虚基类避免数据冗余,抽象类包含纯虚函数,不能直接实例化。数据...

Global site tag (gtag.js) - Google Analytics