第七天(面向对象)

(1)this:是当前类的对应引用。简单来讲,它就代表当前类的一个对象。

    this的场景:解决局部变量隐藏成员变量。

(2)构造方法:

    作用:给对象的数据进行初始化。

    格式:1.方法名与类名相同;2.没有返回值类型,连void都没有;3.没有具体的返回值。

    class Student(){

      public Student(){

        System.out.println("这是构造方法");

      }

    注意:如果我们没有给出构造方法,系统会自动提供一个无参构造方法。

    Student s = new Student();在内存中做了哪些事情:

      A:把Student.class文件加载到内存;

      B:在栈内存给s变量开辟一个空间;

      C:在对内存为学生对象申请一个空间;

      D:给成员变量进行默认初始化;

      E:给成员变量进行显示初始化;

      F:通过构造方法给成员变量进行初始化;

      G:数据初始化完毕,然后把堆内存的地址值赋值给栈内存s变量。

(3)static:静态的。

    特点:(它可以修饰成员变量,还可以修饰成员方法)

      A:随着类的加载而加载。

      B:优先于对象存在。

      C:被类对所有对象共享。

      D:可以通过对象名调用,也可以通过类名调用。

(4)private:

      A:私有的意思,可以修饰成员变量和成员方法
      B:特点:被private修饰的后的成员只能在本类中被访问
      C:private的应用:
        以后再写一个类的时候:
        把所有的成员变量给private了
        提供对应的getXxx()/setXxx()方法

(5)main方法是静态的:
      public:权限最大
      static:不用创建对象调用
      void:返回值给jvm没有意义
      main:就是一个常见的名称。
      String[] args:可以接收数据,提供程序的灵活性
      格式:java MainDemo hello world java
         java MainDemo 10 20 30

  

时间: 2024-10-24 09:07:54

第七天(面向对象)的相关文章

Python基础-第七天-面向对象编程进阶和Socket编程简介

本篇内容: 1.面向对象编程进阶-静态方法 2.面向对象编程进阶-类方法 3.面向对象编程进阶-属性方法 4.面向对象编程进阶-特殊成员(内置方法) 5.面向对象编程进阶-反射 6.异常处理.断言 7.Socket编程简介 一.面向对象编程进阶-静态方法 1.静态方法的实现 通过@staticmethod装饰器可以把其装饰的方法变为一个静态方法: 变成静态方法后,形参中可以不用写self了.如果写了self,默认是不会把对象本身传递给self,需要手动传递: class Dog(object):

第七章 面向对象(一)

7 面向对象 7.1 类和对象 类:现实世界中的实体在计算机中的反映,它将数据以及这些数据上的操作封装在一起. 对象:类的具体实例 7.2 成员变量和局部变量     7.2.1 作用范围 成员变量作用于整个类中. 局部变量作用于方法或语句中.     7.2.2 内存中的位置 成员变量在堆内存中 局部变量在栈内存中 7.3 匿名对象 创建对象时不起名字:new Car(): 匿名对象是对象的简化形式 7.3.1 使用情况 1.对对象的方法只进行一次调用 2.作为实际参数进行传递 7.4 构造函

软件工程概论第七章--面向对象分析

本章主要讲了面向对象分析,从分析的概念.识别分析类.定义交互行为.建立分析类图和评审分析模式几个方面展开讲述.面向对象分析模型由三个独立模型,功能模型.分析对象模型.动态模型. 分析的概念中主要讲了分析类与分析活动,分析类用于描述系统中较高层次的对象,从软件功能需求来看能划分为实体类.边界类和控制类.分析活动把需求获取阶段产生的用例和场景转换成分析模型. 识别分析类讲了识别边界类.识别控制类.识别实体类三个方面,识别边界类,通常一个参与者与一个用例之间的交互或通信关联对应一个边界类.识别控制类,

《软件工程 ——理论、方法与实践》知识概括第七章 面向对象分析

第7章 面向对象分析    面向对象的分析模型:功能模型.分析对象模型.动态模型. 一.分析的概念 分析类可以划分为实体类.边界类和控制类. 在UML语言中,使用构造型<<entity>>.<<boundary>>和<<control>>分别表示实体类.边界类.控制类. 分析活动:理解用例模型.识别分析类(识别实体类.识别边界类.识别控制类).定义交互行为.建立分析类图(定义属性.定义行为.定义关系).评审分析模型.分析过程是一个循环

JAVA学习第七天——面向对象

将学生和工人的共性描述抽取出来.单独进行描述. 只要学生和工人与单独描述的这个类有关系,就可以了. 继承: 1.提高代码的复用性 2.让类与类之间产生关系.有了关系才有了多态的特性. 注意:千万不要为了获取其他类的功能,简化代码而继承: 必须是类与类之间有所属关系才可以继承,所属关系 is a. java中只支持单继承不支持多继承:因为多继承容易带来安全隐患 因为当功能内容不同时,子类对象不确定要运行哪一个. 但是java保留这种机制.并且用另一种体现形式来完成,多实现 java支持多层继承.也

python第七周-面向对象编程进阶

申明:本文内容主要转自Alex老师的博客,仅供学习记录! 静态方法 只是名义上归类管理,实际上在静态方法里访问不了类实例中的任何属性 通过@staticmethod装饰器即可把其装饰的方法变为一个静态方法,什么是静态方法呢?其实不难理解,普通的方法,可以在实例化后直接调用,并且在方法里可以通过self.调用实例变量或类变量,但静态方法是不可以访问实例变量或类变量的,一个不能访问实例变量和类变量的方法,其实相当于跟类本身已经没什么关系了,它与类唯一的关联就是需要通过类名来调用这个方法 1 clas

python基本知识(七):面向对象,继承

'''面向对象编程: 1. POP, OOD, OOP 2. 类与实例 3. 继承: 单继承, 接口继承与多态, 多继承 4. 封装 5. 反射(获取信息, 命令分发, 动态加载模块)''' # 综述 '''POP & OOD & OOP: 1. POP(Process Oriented Programming, 面向过程编程): 将一个过程分为几个子过程来完成 2. OOD(Object Oriented Design, 面向对象设计): 通过定义函数实现'obj = data + me

第七章 面向对象(2):对象的使用

上一篇我们介绍了面向对象以及类,其中也有一些关于对象的概念. 简单的说,对象就是特征与技能的结合体. 7.3.1 __init__方法 __init__方法用来为对象指定对象自己独有的特性.(初始化方法) class Student: school = 'aaa' # 变量又称-类的数据属性 def __init__(self, name, sex, age): # 实例化的时候就会调用__init__方法 self.Name = name # 把参数传入实例化的对象 (python 大小写区分

Python之旅(七)面向对象

三大编程范式 三大编程范式(这三者各有千秋,不分好坏): 面向过程编程 函数式编程 面向对象编程 面向过程编程 “面向过程”(Procedure Oriented)是一种以过程为中心的编程思想. 过程是指解决问题的步骤.例如问题:如何把大象放入一个冰箱?步骤:先打开冰箱,在将大象放入冰箱,最后关上冰箱.面向过程是一种较机械式的思维方式. 优点: 复杂的问题流程化,进而简单化(一个复杂的问题,分成一个个小的步骤去实现,实现小的步骤将会非常简单). 性能比面向对象高,因为类调用时需要实例化,比较消耗

第七章-面向对象高级编程

1 使用__slots__ 1.1 绑定属性和方法 给实例绑定属性 class Student(object): pass >>> s = Student() >>> s.name = 'Michael' # 动态给实例绑定一个属性 >>> print(s.name) Michael 给某个实例绑定方法 >>> def set_age(self, age): # 定义一个函数作为实例方法 ... self.age = age ...