喵星之旅-成长的雏鹰-java面向对象-1-类与对象

掌握类和创建对象的关系

开发方法

结构化开发

面向功能划分软件结构
自顶而下
最小的子系统是方法
制约了软件的可维护性和可扩展性

面向对象开发(OOP)

把软件系统看成各种对象的集合
系统结构较稳定
子系统相对独立
软件可重用性、可维护性和可扩展性强

万物皆对象

分类是人们认识世界的一个很自然的过程,在日常生活中会不自觉地进行分类
分类的标准主要为具有的特点和具有的能力。

对象的特征–属性

属性——对象具有的各种特征
每个对象的每个属性都拥有特定值
例如:张浩和李明的年龄、姓名不一样

对象的特征–方法

方法:对象执行的操作

对象

用来描述客观事物的一个实体,由一组属性和方法构成

类和对象

类:具有相同属性和方法的一组对象的集合
类是对象的抽象,对象是类的具体

类和对象的关系

类是抽象的概念,仅仅是模板
比如说:“人”
对象是一个你能够看得到、摸得着的具体实体

定义类

Java是面向对象的语言
所有Java程序都以类class为组织单元
关键字class定义自定义的数据类型

1
2
3
4
5
6
public class HelloWorld {
public static void main(String[] args){
System.out.println("Hello World!!!");
}
}

定义类的步骤:
(1)定义类名
(2)编写类的属性
(3)编写类的方法

定义对象

使用对象的步骤
1、创建对象
2、类名 对象名 = new 类名();

引用对象成员:使用“.”进行以下操作
1、引用类的属性:对象名.属性
2、引用类的方法:对象名.方法名()

定义和调用方法

方法是个“黑匣子”,完成某个特定的应用程序功能,并返回结果
类的方法定义类的某种行为(或功能)

如果方法具有返回值,方法中必须使用关键字return返回该值,返回值类型为该值的类型。返回值只能有一个。
如果方法没有返回值,返回值类型为void。

方法之间允许相互调用,不需要知道方法的具体实现,实现重用,提高效率 。

1
2
3
4
public   返回值类型  方法名()  {
//这里编写方法的主体
}

命名规范

命名使用限制为:字母(英文字母、中文字母均可,也就是中英文)、数字、下划线、美元符号。(数字不可以开头)。

其中美元和下划线,在系统中有特殊使用情况,不建议个人使用。

类名

1
2
3
类名必须使用有意义的名字。
类名的每个单词的首字母必须大写—帕斯卡命名法。
类名中间不能添加空格,不能使用java关键字。

变量-属性

1
2
3
4
杜绝使用美元符和下划线作为标识符命名的开头;
必须使用有意义的名字作为变量名(包括缩写);
杜绝使用中文来命名;
不建议使用拼音命名。

方法名

1
2
3
首字母小写
小驼峰命名
命名有意义

一些例子

1
2
3
4
5
6
7
8
9
10
11
12
public class School {
String schoolName; //中心名称
int classNumber; //教室数目
int labNumber; //机房数目

//定义方法
public void showCenter(){
System.out.println(schoolName + "培训学员\n" + "配备:"
+ classNumber + "教" + labNumber + "机");
}
}

1
2
3
4
5
6
7
8
9
10
11
12
public class InitialSchool {
public static void main(String[] args) {
School center = new School();
System.out.println("***初始化成员变量前***");
center.showCenter();
center.schoolName = "北京中心"; //给schoolName属性赋值
center.classNumber = 10; //给classNumber属性赋值
center.labNumber = 10; //给labNumber属性赋值
System.out.println("\n***初始化成员变量后***");
center.showCenter();
}
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
import java.util.Scanner;

public class Visitor {
String name; //姓名
int age; //年龄

public void show(){
Scanner input = new Scanner(System.in);
while(!"n".equals(name)){
if(age>=18 && age<=60){ //判断年龄
System.out.println(name + "的年龄为:" + age +
",门票价格为:20元\n" );
}else{
System.out.println(name + "的年龄为:" + age + ",门票免费\n");
}
System.out.print("请输入姓名:");
name = input.next(); //给name属性赋值
if(!"n".equals(name)){
System.out.print("请输入年龄:");
age = input.nextInt(); //给age属性赋值
}
}
System.out.print("退出程序");
}
}

1
2
3
4
5
6
7
8
9
10
11
12
13
import java.util.Scanner;
public class InitialVistor {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
Visitor v = new Visitor(); //创建对象
System.out.print("请输入姓名:");
v.name = input.next(); //给name属性赋值
System.out.print("请输入年龄:");
v.age = input.nextInt(); //给age属性赋值
v.show(); //调用显示信息方法
}
}

文章目录
  1. 掌握类和创建对象的关系
    1. 开发方法
      1. 结构化开发
      2. 面向对象开发(OOP)
    2. 万物皆对象
      1. 对象的特征–属性
      2. 对象的特征–方法
      3. 对象
    3. 类和对象
      1. 类和对象的关系
  2. 定义类
  3. 定义对象
  4. 定义和调用方法
  5. 命名规范
  6. 一些例子
|