Java OO 知识总结

阅读更多

说明:

Java oo的相关知识实在是太多了,甚至每个知识点都可以写一篇文章,这里介绍一些基础的和对应知识点提示。

 

 

概述:

1.类和对象

  1. Java万物皆是对象,旨在将世界中的概念模拟到计算机程序中,它将现实世界中的所有事物视为对象。
  2. 对象的描述是通过特征和行为来描述的,特征是对事物的静态描述,行为是对事务的动态描述。
  3. 对应到程序中就是特征就是属性(成员变量)和行为就是方法。
  4. 多个对象具有的相同特征和行为,我们将这样的特征和行为抽象出来,形成一个新的单元,这个单元称作是类。
  5. 类是具有相同属性和共同行为的一组对象的抽象集合。
  6. 类是面向对象程序设计中的基本单元。
  7. 对象是实体,而类是概念模型,用来定义对象的所有特征和行为。同一类的所有对象都拥有相同的特性和行为。
  8. 你我他都是真真实实存在的,而人类是对你我他这样的真实存在的实体的共有特征和行为的描述。

2.java oo

  1. 类的基本组成:成员变量、构造函数、方法
  2. 成员变量:成员变量定义在类中,与之对应的局部变量在某个代码块中,它的有效范围是当前所在代码块中
  3. 构造函数:默认构造方法和构造方法的重载
  4. 方法:方法的定义、方法参数传递机制、重载和重写、递归、动态参数
    《Java入门 之 方法》
  5. 权限修饰符:public、protected、default、private
  6. 包的概念:主要是为了解决重名问题,java导入分为导入和静态导入
  7. 继承:java只支持单继承
  8. 封装
  9. 多态:体现在方法的重载和重写
  10. 抽象类和抽象方法
  11. 接口:对行为的声明

3.几个关键字

  1. this:指代当前对象自身,例如:this.name、this.show()等。
    《Java入门 之 this》
  2. super:代表继承某些成员变量
  3. static:静态的 可以修饰成员变量、方法,也可用于静态代码块。
    《Java基础 之 static》
  4. final:代表最终的 不可变化的,可用来修饰变量(常量)、参数、方法、类
    《Java入门 之 final》
  5. extends:继承关键字 用在类名后面
  6. implements:实现接口关键字 用在类名后面
  7. abstract:用来修饰抽象类和抽象方法关键字
  8. interface:代表一个接口

 

package com.cxyapi.oo;

/** 面向对象知识点总结
 * @author cxy @ www.cxyapi.com
 */
public class OoTest1
{
	public static void main(String[] args)
	{
		/**
		 * User是一个类(模子、模版、一个定义、设计图)
		 * u1是一个对象(具体的实例、一个具体的user,而不仅仅是个概念)
		 * 实例化相关的理解:
		 * 	1.new 后面跟构造函数 来实例化一个对象。
		 *  2.u1只是一个引用变量,它存放的是对象的地址,而不是对象本身。
		 */
		User u1=new User("cxy");
		u1.show(); //user的行为,介绍展示自己
	}
}


/** 一个用户model,是一个类 一个模型 抽象的概念
 *@author cxy @ www.cxyapi.com
 * 包括:Field-成员变量(属性,特征)、构造函数、方法(行为,操作)
 */
class User
{
	/** 成员变量:名字
	 * 对于一个标准的JavaBean或者model来说应当
	 * 将成员变量设置成私有,然后对其生成getter、setter
	 * 这也是保证封装行的体现
	 */
	private String name;
	
	/** 构造方法
	 * 1.这个是带参数的构造方法。
	 * 2.系统默认提供一个不带参数的构造方法,但是如果定义了一个带参数的 那系统默认的构造方法就会失效。
	 * 3.this用法体现之一:参数和成员变量名字一样,这时候this指代的就是当前要构造的对象的name。
	 */
	User(String name)
	{
		this.name=name;
	}
	
	//介绍自己
	public void show()
	{
		//这里的this指代的就是当前调用show方法的这个对象,其实这里可以省略不写
		System.out.println("大家好 我叫"+this.getName());
	}
	
	public String getName()
	{
		return name;
	}

	public void setName(String name)
	{
		this.name = name;
	}
}

 

 

 

声明:

1.原创文章,转载请标明并加本文连接。

2.文章反映个人愚见,如有异议欢迎讨论指正

3.更多的内容请看我的  个人博客(测试版)

 

你可能感兴趣的:(java,oo,面向对象)