上次我为大家写出啦 “面向过程和面向对象的异同”,以及较为形象的方式来描述“类和对象的关系”不知道是否有人了解透彻,如没有了解透彻的话请打开下方文章在进行观看一下哦
Dimple:Java入门姿势【面向对象:1】啥事面向对象、类和对象如何理解
这此我们来直接定义一个类以及创建类中的对象。也终于进入代码编写阶段。本节中重点介绍类和对象的基本定义,属性和方法的基本使用方式。
学习教程推荐:
- 1.北京高淇Java300集(Java强烈推荐)
Java300集零基础适合初学者视频教程_Java300集零基础教程_Java初学入门视频基础巩固教程_Java语言入门到精通 - 2.JavaSE基础全套-从零开始进阶之大神(推荐)
【大力推荐】OOP面向对象Java基础干货分享/JavaSE/面向对象编程/OOP程序设计_哔哩哔哩_bilibili - 3.Java全套课程-基础必备课程
JAVA全套课程_Java入门_Java零基础必备_Java编程课程_Java核心基础_EasyUI_SSM整合框架_Redis_高并发—全套课程 - 4.Java常用类基础实战
【基础夯实】Java常用类实战基础教程_Java八大常用类核心基础_Java常用类基础入门/Java包装类/String类 - 5.Java基础入门必备数学知识【数据结构与算法】(推荐)
Java基础入门必学知识数据结构与算法_Java数据结构与算法基础到进阶/Java基础入门进阶/Java数据结构分析/Java数据结构常见问题_哔哩哔哩_bilibili - 6.Java面向对象编程_OOP基础深入讲解
Java面向对象编程重基础深入讲解_OOP面向对象Java基础干货分享/JavaSE/面向对象编程/OOP程序设计 - 7.GOF23种设计模式-23中设计模式详解课程
GOF23种设计模式讲解_Java gof23种设计模式详解课程_从单例到备忘录模式 23种模式详解
一、定义类和创建对象
属性(field 成员变量)
属性用于定义该类或该类对象包含的数据或者说静态特征。属性作用范围是整个类体。
在定义成员变量时可以对其初始化,如果不对其初始化,Java使用默认的值对其初始化。
属性定义格式:
[修饰符] 属性类型 属性名 = [默认值] ;
方法
方法用于定义该类或该类实例的行为特征和功能实现。方法是类和对象行为特征的抽象。方法很类似于面向过程中的函数。面向过程中,函数是最基本单位,整个程序由一个个函数调用组成。面向对象中,整个程序的基本单位是类,方法是从属于类和对象的。
需要的同学可以观看下面这边文章:
Dimple:Java入门姿势【方法】初始方法、方法概念引入
方法定义格式:
[修饰符] 方法返回值类型 方法名(形参列表) {
|
void代表没有返回值;方法的作用:重用代码,封装功能,便于修改
【示例一】:定义类,模拟人的行为:吃饭、工作、休息
1) 面向对象分析OOA
从张三、李四、王五中提取出共同内容,提取一个类,人Person,包含共同的内容
静态的特征:姓名、年龄、性别、住址
动态的行为:eat、rest、work
2) 面向对象设计 OOD Design
类:Person
对象:zhangsan、lisi
让对象完成功能
3) 面向对象编程OOP Programming
public class Person {
//静态特征:成员变量 属性 field
String name; //姓名
int age;//年龄
//动态的行为: 成员方法 method
public void eat(){
System.out.println("----人是铁饭是钢,一顿不吃饿得慌!!!-----");
}
public void work(){
System.out.println(name+"-------在劳动------");
}
public void rest(String site){
System.out.println(name+"在"+site+"休息");
}
}
【示例二】:模拟实现具体人的特征和行为
public class Test {
public static void main(String[] args) {
//int n=5;
int n;
n = 5;
System.out.println(n);
Scanner input = new Scanner(System.in);
//创建一个Person类的对象:张三并进行动态行为
//Person person1 = new Person();
Person person1; //方法中定义的变量,局部变量,没有默认值
person1 = new Person();
person1.name="zhangsan";
person1.age = 23;
person1.eat();
person1.work();
person1.rest("宿舍");
//创建一个Person类的对象:李四并进行动态行为
Person person2 = new Person();
person2.name="lisi";
person2.age=24;
person2.work();
person2.rest("工地");
person2.eat();
}
}
总结1:如何创建对象
Scanner input = new Scanner(System.in);
Person person1 = new Person();
new 后面是构造方法,具体含义稍后讲解
总结2:如何操作属性:对象名.属性名
person1.name="zhangsan";
person1.age = 23;
总结3:如何调用方法: 对象名.方法名(实参列表)
person1.eat();
person1.work();
person1.rest("宿舍");
内存分配图
二、局部变量
类中定义的变量是成员变量,而方法中定义的变量,包括方法的参数,代码块中定义的变量被称为局部变量。两个的区别主要表现在以下几方面:
局部变量【示例1】:使用计算器完成加法、减法运算
public class Calculator {
//成员变量
private String brand;//品牌
private double size;//尺寸
//成员方法
public int add(int num1,int num2){
int result;
result = num1+num2;
return result;
}
public int sub(int num1,int num2){
return num1-num2;
}
public void show(){
System.out.println("我购买了一个计算器"+brand+","+size);
}
public static void main(String[] args) {
//购买运算器
Calculator calc = new Calculator();
calc.brand = "联想";
calc.size = 6.5;
calc.show();
//使用运算器进行运算
int num1 = 10;
int num2 = 20;
int result = calc.add(num1,num2);
System.out.println(result);
result = calc.sub(num1,num2);
System.out.println(result);
}
}