第五章:面向对象(上)

1.static成员不能直接访问没有static修饰的成员。

static区分变量、方法属于类还是属于实例。

2.类默认自带一个无参数的构造器!  自己如果写构造器,系统就不会再提供构造器了。

3.方法要么属于类,要么属于实例对象。

4.java参数传递: 值的传递,值copy一份,不论copy的那份被如何修改,都不会影响原来的。

5.变量的划分:

  static修饰:分为 实例变量 和 类变量。

作用域:  成员变量 、局部变量。

6. 工厂模式、反射方式创建对象。

7.重载:方法

覆盖:子类与父类之间。

遵循原则: 两同两小一大!

方法签名相同

子类返回值类型《=父类的返回值类型

子类方法声明抛出的异常《=父类方法声明抛出的异常

子类方法的访问权限》=父类方法的访问权限

8. 父类(基类、超类)

9. 子类不能从父类那里得到父类构造器。

10.访问权限的问题!

private:同一个类!

default:同一个类,同一个包!

protected:同一个类、同一个包、子类!

public: 全局范围!

11.重载:同一类多个同名方法。     父子类也有!

重写:子类和父类的同名方法。

12. java引用变量: 编译时类型、运行时类型            多态的体现啊

13. 静态初始化块:类初始化。 static修饰的哦!

普通初始化块: 创建对象时才执行。

时间: 2025-01-16 09:35:34

第五章:面向对象(上)的相关文章

第04章(面向对象——上)

1 /***************** 2 ***第四章面向对象(上) 3 *******知识点: 4 **************1.类和对象 5 ******************1.1 关键字 6 ******************1.2 定义 7 ******************1.3 使用 8 **************2.方法和属性 9 ******************2.1 关键字 10 ******************2.2 方法重载和重写 11 ******

第五章.面向对象(上)

类:可被认为是一种自定义的数据类型,可使用类来定义变量,所有使用类定义的变量都是引用变量,所有的类是引用类型. Java程序使用类的构造器来创建该类的对象. Java支持面向对象的三大特征:封装.继承.多态: java提供了private.protected.public访问控制修饰符来实现封装,提供extends关键字让子类继承父类,有了继承就有了多态. 构造器用于对类的实例进行初始化操作,构造器支持重载,若多个重载构造器里包含了相同的初始化代码,可以把这些初始化代码放置在普通初始化块里完成,

C++primer第十五章. 面向对象编程

面向对象编程基于三个基本概念:数据抽象.继承和动态绑定. 15.1. 面向对象编程:概述 面向对象编程的关键思想是多态性(polymorphism). 之所以称通过继承而相关联的类型为多态类型,是因为在许多情况下可以互换地使用派生类型或基类型的“许多形态”.正如我们将看到的,在 C++ 中,多态性仅用于通过继承而相关联的类型的引用或指针. 继承 派生类(derived class)能够继承基类(baseclass)定义的成员,派生类可以无须改变而使用那些与派生类型具体特性不相关的操作,派生类可以

Python之旅.第五章.面向对象 4.12

p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; line-height: 15.0px; font: 13.0px "PingFang SC"; color: #000066; background-color: #ffffff } p.p2 { margin: 0.0px 0.0px 0.0px 0.0px; line-height: 15.0px; font: 13.0px Courier; color: #000066; background-co

第五章 面向对象编程设计与开发——续3

5.9--封装 如何隐藏 在python中用双下划线开头的方式将属性隐藏起来(设置成私有的) #其实这仅仅是一种变形操作 #类中所有双下划线开头的名称如_x都会自动形成:_类名_x的形式: class A: _N=0#类的数据属性就应该是共享的,但是语法上是可以把类的数据属性设置成私有的如_N,会变形为_A_N def _init_(self): self._x=10#变形为self._A_X def _foo(self):#变形为_A_foo print('form A') def bar(s

第五章 面向对象(二)

5 面向对象的特征 封装 继承 多态 5.1 封装    隐藏对象的属性和实现细节,仅对外提供公共访问方式    好处: 便于使用 提高重用性 提高安全性 例如:函数(最小的封装体).类.包.框架. 5.2 继承   1.继承的特点 提高了代码的复用性. 类和类之间之间产生了关系,从而有了多态的特性. java只支持单继承,以为多继承容易带来安全隐患:当多个父类中定义了相同功能,但功能内容不同时,子类对象不确定运行哪一个.但是java保留了这种机制,用接口来完成多实现. java支持多层继承.

第五章.面向对象.总结

面向对象编程 1.面向过程编程 核心是"过程"二字,过程指的是解决问题的步骤,即先干什么再干什么 基于该思想编写程序就好比在编写一条流水线,是一种机械式的思维方式 优点:复杂的问题流程化.进而简单化 缺点:可扩展性差 2.面向对象 核心"对象"二字,对象指的是特征与技能的结合体, 基于该思想编写程序就好比在创造一个世界,你就是这个世界的上帝,是一种 上帝式的思维方式 优点:可扩展性强 缺点:编程的复杂度高于面向过程 对象与类 1.对象是特征与技能的结合体,那类就是一

第五章 面向对象编程设计与开发——续

5.1   类.实例.属性.方法详解 类的语法 上面的代码其实有问题,属性名字和年龄都写死了,想传名字传不进去. class Person(object): def __init__(self, name, age): self.name = name self.age = age p = Person("Alex", 22) print(p.name, p.age) 为什么有__init__? 为什么有self? 此时的你一脸蒙逼,相信不画个图,你的智商是理解不了的! 画图之前, 你

第五章 面向对象编程设计与开发——续2

5.4--小结 从代码级别看面向对象 1.在没有学习类这个概念时,数据和功能是分离的 def exc1(host,port,db,charset): conn=connect(host,port,db,charset) conn.execute(sql) return xxx def exc2(host,port,db,charset,proc_name) conn=connect(host,port,db,charset) conn.call_proc(sql) return xxx #每次调

第3章 面向对象 (上)

本章重点 ·面向对象的概念 ·类与对象 ·构造方法 ·this和static关键字 ·内部类 3.1 面向对象的概念 面向对象:在程序中使用对象来映射现实中的事物,使用对象的关系来描述事物之前的联系. 1.封装性 封装是面向对象的核心思想,将对象的属性和行为封装起来,不需要让外界知道具体实现细节. 2.继承性 主要是描述的是类与类之间的关系,通过继承,可以在无须重新编写原有类的情况下,对原有类的功能进行扩展. 继承不仅增强了代码复用性,提高了开发效率,而且为程序的修改补充提供了便利. 3.多态性