Java面向对象笔记

前提

Java->面向对象、面向切面、面向服务
C语言->面向过程

1. 面向对象编程和面向过程编程的区别

  • 面向过程在解决问题的时候,会分析出解决问题的步骤,然后一步步的将这些步骤实现主要强调:我怎么去做。缺点:效率低。
  • 面向对象在解决问题的时候,会将问题拆散成一个个对象,建立对象的目的不是为了完成某个步骤,而是为了描述某个事物在整个解决问题的步骤中的行为。主要强调:我找谁去做事情。优点:把复杂的问题简单化。把过程中的执行者变成了对象中的指挥者。
  • 面向对象的三大特性:封装、继承、多态

2. 什么是对象

  • 定义:在现实世界中实际存在的个体。万物皆对象。
    具体的

3. 什么是类

  • 定义:类是对象的特征(属性)和行为(方法)的抽象概念
    抽象的

4. 类和对象的关系和区别

  • 区别:类是对象的描述,是一个抽象概念;对象是一个实实在在存在的,是类的具体化,施例化是一个具体的概念。
  • 关系:对象是类在现实世界中的个体实现,类是对象的抽象描述;

5. 如何定义类

修饰符 class 类名{
//类的属性
修饰符 数据类型 属性名;
//类的方法(void无返回值)
修饰符 void 方法名(){
//方法体
}

}
package com.m.demo;

public class People {
	//属性
	public char sex;
	public String name;
	public double height;
	public  int age;
//	方法
	public void information() {
		System.out.printf("性别:%c\t姓名:%s\t身高:%.2f\t年纪:%d",sex,name,height,age);
	}
	public void eat() {
		System.out.print("吃饭");
	}
	public void sleep() {
		System.out.printf("睡觉");
	}
}

6. 如何通过类创建对象

  • 创建对象
类名 对象名=new 类名();
  • 给对象的属性赋值
//获取属性
对象名.属性;
//属性赋值
对象名.属性名=;
  • 调用对象方法
package com.m.demo;
public class Test3 {
	public static void main(String[] args) {
		People p=new People();
		p.age=13;
		p.height=1.5;
		p.name="ABC";
		p.sex='男';
		p.information();
		p.eat();
		p.sleep();
	}
}

7. 对象的内存图解

  • 栈内存(stack):连续的存储空间,一般存储的是局部变量。(方法中定义的变量,在创建对象时不会默认初始化)
  • 堆内存(heap):不连续的内存空间,一般存储是new出来的对象,是类的实例
  • 方法区(method):在堆内存中,存储的是类的代码信息
  • 基本数据类型在栈内存中,引用数据类型在堆内存中
  • 8个基本数据类型
  • 成员变量:方法之外定义的变量,创建变量时,会默认初始值(系统自动默认)。

在这里插入图片描述

8. UML类图

统一模型构建语言,用来对面向对象的系统产品进行说明可视化,编辑文档的统一语言。
在这里插入图片描述

修饰符说明:
public:+
protected:#
default:~
private:-

修饰符 属性名:属性类型[=默认值]
[]:表示可有可无

9. 包的作用和定义方式

对代码进行分类,分模块开发,相当于文件夹。
规则:反域名法。

10. 对象数组

数据类型[] 数组名=new 数据类型[长度];
package com.m.demo;

import java.util.Arrays;
import java.util.Scanner;

public class Test4 {
	public static void main(String[] args) {
		People [] p=new People[3];//声明
		Scanner s=new Scanner(System.in);
		for(int i=0;i<p.length;i++) {
			System.out.printf("请输入第%d个人的信息\n",i+1);
			System.out.printf("年纪:");
		    p[i]=new People();//创建
			p[i].age=s.nextInt();
			System.out.printf("身高:");
			p[i].height=s.nextDouble();
			System.out.printf("姓名:");
			p[i].name=s.next();
			System.out.printf("性别:");
			p[i].sex=s.next().charAt(0);
		}
		
	}
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Java面向对象程序设计笔记: 目录----非原创,上课的时候老师给的资料哦 第一章 Java 前凑 3 1. Java前凑 3 Java产生的目的 3 Java的诞生的历史 3 2.Java语言的特点 3 简单性 3 面向对象 3 网络技能 3 3.Java语言与其他语言的区别 4 第二章 Java面向对象程序设计初步 4 1. 程序语言的分类 4 解释型语言Java是编译解释型语言Java编译器、解释器、JVM以及OS之间的关系 4 JVM的结构与作用 4 2. 程序设计的发展过程 4 程序设计的发展过程 4 O-O发展过程 5 O-O的体系 5 O-O程序设计与结构化程序设计的区别 5 3. Java应用程序 5 搭建开发环境 5 4. 类的设计与对象的构造 6 类的两个要素 6 构造函数 7 Java对内存的管理 7 Java源文件的结构 7 第三章 Java语法 8 1. Java注释 8 2. 标识符 9 3. 数据类型 9 基本数据类型 9 引用数据类型 9 5. 变量 9 6. 运算符 9 7. 数据的传输 9 8. 程序的逻辑控制语句 9 9. 数组 9 第四章 JavaOO程序设计 9 1.Java面向对象编程的特点 9 2.继承 10 2.1继承 10 2.2.Super关键字: 10 2.3.this关键字: 10 2.4.子类对象的构造和初始化: 11 2.5.方法的覆盖: 11 2.6.各种数据类型之间的相互转换: 12 3.静态成员 13 4. Final关键字: 13 5. 抽象类: 13 6. 接口 14 7. 接口与抽象类的区别: 15 8. 设计模式 15 单一设计模式: 15 策略模式: 16 模板模式: 16 组合设计模式: 16 9. 多态 16 10. 内部类 17 第五章 Java集合对象 18 1.List 18 2.Set 18 3.Map 19 第六章 常用的API类 21 1.对文件进行操作的类 21 2.对String对象操作的类 24 3. 对时间处理的类 25 4. 对系统处理的类: 26 5. 数据运算的类 27 6. 正则表达式 27 第七章 异常处理 32 第八章Oracle数据库基础 32 第九章JDBC编 32 第十章GUI编程 32

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值