Author: Kim
http://gimgen1026.iteye.com/
内存分析贯穿始终。每一个程序拿出来,这个内存里面到底怎么运行的,必须弄得清清楚楚的,所以复习的时候自己把每个程序拿出来自己想一想这个在内存里怎么执行,必须得想明白。
对象和类的概念:什么叫对象,什么叫类?
类是具有同一类事务的一个抽象。同一类,同样特征的的一个抽象。
对象是一类事务的一个特殊的实例。
类(对象)之间的关系:咱们讲了好多种,关联、继承、聚合,聚合里头还分两种聚集、组合。此外还有多态、实现。
面向对象的设计思想:认识到多态之后意识到了的它和面向过程确实不太一样。面上对象设计思想上来之后考虑的是这个问题域里头有哪些对象或者说那些类,类理有哪些属性和方法,类和类之间是什么关系,有没有继承的关系,有没有多态的关系,ok,这就是面向对象的设计思想。
class关键字:在Java里面使用class来定义一个类。
new关键字:new的时候new出了一个的新对象,然后呢迁出了一个引用的概念。引用是什么?脑子里立刻浮现同一小块内存指向一大块内存。
new一般和构造方法一起使用。构造方法指的是当这个类new一个新对象的时候调用的方法,这方法比较特殊,和类同名,没有返回值,void都不能写。
方法重载:同时构造方法也可以重载。那么,什么叫方法重载,方法名字一样,但是参数之间有区别,参数之间的区别在于类型不一样,或者是参数的个数不一样。
this关键字:this指的是当前对象,你现在调用哪个方法,这个this指的就是谁,那么内存里面什么情况呢,new出一个对象来,它里面有自己的引用指向自身。
static:static的成员变量它是属于所有类的,static的成员变量一般分配在Data区域里面,这个类的所有对象属于整个类,你不需要new这个对象就可以访问它。非static的,你必须得new一个对象才能访问它,static不需要,所以我们用类名加上点,即ClassName.***就能访问它里面的值,或者是来访问它的方法。
访问控制:3个关键字private (default) protected publicprivate修饰了成员变量是私有的,只有自己能访问它,出了类没有人能够访问它。
default一个包内的其他类可以访问它。
protected它的子类可以访问它。
public 所有类都能访问。
在这里default和public还可以修饰class,即public class的话所有的类都能访问它。default类是同一个包里面的其他类可以访问它。
还有一点,这3个关键字以及default都能修饰内部类。
extends 即继承:它的意思就是《某某是一种某某》,即《某某instanceof某某》,只要说通这句话就OK。
从一个类继承到另一个类的时候,相当于你拥有了那个类的所有的成员变量和所有的成员方法,包括private的,可是很不幸,这个private的成员变量你继承下来以后你拥有了所有权,sorry! 你没有使用权,即你只能看不能用。
overwrite(override)即方法的重写:父类里面实现了某方法,如果你很不满意,很简单,重写它。
final:final的变量不能够改变它的值。
final的方法不能被重写。
final的class不能被继承。
Object:Java的所有的老祖宗类,根基类。
典型的有toString方法:说白了就是一个字符串上的表现,你可以重写它,也可以写字符串来表现。
equals方法:定义了这个类的两个对象之间怎么样算相等,这样的语义。
upcasting(向上转型)&downcasting(向下转型):父类的引用指向子类对象,或者接口的引用指向实现接口的类的对象,叫向上转型,反之向下转型。
ploymophysm(多态)/ dynamic binding(动态绑定)/ late binding(时绑定):多态的存在有三个必要条件,要有继承、要有重写、父类引用指向子类对象。
脑子里立刻浮现出内存来,我们找那个方法的时候你实际当中new的是哪个类,我就找哪个类的对象的那个方法,这叫动态绑定。
abstract class(抽象类):含有抽象方法的类就是抽象类。抽象类只有方法定义,没有实现。
interface(接口):它是一种特殊的抽象类,这里面所有的方法都是抽象方法,并且都是public的。所有的成员变量都是public static final的。
接口和接口之间互相可以继承,类和类之间互相可以继承。类和接口之间只能实现,关键字implements。
一个类可以实现多个接口,多个类可以实现一个接口。
接口的本质,内存里面想一想,它其实就能看见这个对象的其中一部分方法,这就是一个接口。
分享到:
相关推荐
### JAVA面向对象基础总结 #### 一、面向对象的基本概念 面向对象编程(Object-Oriented Programming, OOP)是一种程序设计范式,它将数据和处理这些数据的方法组织在一起,形成一个整体——对象(Object)。Java...
根据给定文件中的部分内容,以下是对Python面向对象编程(OOP)的关键知识点的详细说明: 1. 封装(Encapsulation): 封装是面向对象编程中的一个基本概念,它指的是将数据(属性)和操作数据的方法捆绑在一起,对...
Java基础面向对象部分思维导图总结
### Java面向对象总结 #### 学习方法介绍:四问法 - **什么?** 面对一个概念时,首先要明确它是什么。 - **有什么特点?** 掌握其特性,了解它与其他概念的不同之处。 - **怎么用demo?** 通过示例来展示如何实际...
面向对象编程是现代软件开发中的核心思想之一,Java语言是其典型的应用平台。本文将深入讲解面向对象的主要概念,包括类和对象、封装、继承、多态、抽象类以及接口。 1. **类和对象** - **面向过程**:在面向过程...
本篇总结主要涵盖了从基础的Java环境配置到高级的面向对象特性,旨在帮助理解和掌握面向对象编程的关键知识点。 首先,Java作为一种跨平台的高级编程语言,提供了三个主要版本:Java SE(标准版),用于桌面应用...
面向对象基础是软件开发中的一种核心概念,它源自对现实世界中复杂问题的模拟和抽象。面向对象编程(Object-Oriented Programming, OOP)强调将数据和操作数据的方法封装在一起,形成对象,通过对象之间的交互来实现...
实验总结强调了面向对象设计的迭代性质,先总体设计后详细设计,且这两者之间的界限往往不那么明确。 总的来说,面向对象分析实验旨在培养学生的分析和设计能力,使他们能够运用面向对象的思想构建符合需求的软件...
《软件工程学生成绩管理系统的面向对象分析》 在当今信息化时代,教育领域的管理也逐渐走向数字化,学生成绩管理系统便是其中的关键一环。本文档旨在详细阐述一个面向对象的学生成绩管理系统的分析过程,涵盖了系统...
面向对象系统分析与设计是软件工程领域的一个重要部分,它涉及如何使用面向对象的方法来分析和设计软件系统。面向对象方法强调的是用现实世界中的概念来模拟软件系统中的实体和它们之间的交互。以下是一些在面向对象...
面向对象编程是现代软件开发的重要组成部分,它不仅有助于提高代码的重用性和可维护性,还能简化复杂系统的管理。PHP5 通过提供丰富的面向对象特性,使得开发者能够在 PHP 中有效地运用这一强大的编程范式。通过理解...
C++面向对象总结 C++面向对象编程是编程语言中的一种编程范式,它强调软件设计的模块化、抽象化和继承性。C++面向对象编程的核心是类和对象的概念。类是一个抽象的概念,它定义了对象的行为和属性,而对象是类的一...
本篇文章将对一系列重要的C#面向对象设计模式进行总结,帮助开发者更好地理解和应用这些模式。 1. 工厂模式:工厂模式是一种创建型设计模式,提供了一种创建对象的最佳方式,通过抽象工厂接口,避免了代码与具体类...
实验课中的四个部分分别涉及了jsp应用、基础Java编程、数据库交互以及面向对象设计。在jsp应用实验中,我了解了如何将Java与网页动态内容结合,提供丰富的用户界面。在Java实验中,我深化了对基本语法和数据结构的...
### Java基础面向对象知识总结 面向对象编程(Object-Oriented Programming, OOP)是一种程序设计思想,它将现实世界中的事物抽象成类和对象,从而实现对问题的有效解决。Java作为一种主流的面向对象编程语言,其...
面向对象编程(Object-Oriented Programming,简称OOP)是一种重要的编程范式,它基于“对象”的概念,将数据和操作这些数据的方法封装在一起。在本资料包中,你将找到一系列与面向对象相关的资源,包括课件、教材、...
总结来说,苏州大学自学考试的面向对象系统分析与设计题库,既是对理论知识的检验,也是对实际操作能力的培养。它通过实际案例的分析和实验,帮助学生深刻理解用例模型的建立与分析,从而为软件开发的实践工作奠定...
总结来说,面向对象程序设计中的函数部分,尤其是派生类、抽象类和类层次结构的设计,是实现软件系统可扩展性、灵活性和可维护性的重要手段。通过合理利用这些概念,开发者可以构建出更加符合实际需求、易于理解和...
在这个总结中,我们将深入探讨Java中面向对象编程的关键知识点,包括类、对象、封装、继承、多态以及接口等核心概念。 首先,类是面向对象编程的基础,它是对现实世界中具有共同属性和行为的事物的抽象。在Java中,...