Java 基础:修订间差异

来自牛奶河Wiki
跳到导航 跳到搜索
无编辑摘要
无编辑摘要
第3行: 第3行:
*'''对象(object)'''  :对象是类的一个实例,有状态和行为。例如,一条狗是一个对象,它的状态有:颜色、名字、品种;行为有:摇尾巴、叫、吃等
*'''对象(object)'''  :对象是类的一个实例,有状态和行为。例如,一条狗是一个对象,它的状态有:颜色、名字、品种;行为有:摇尾巴、叫、吃等
*'''类(class)'''      :类是一个模板,它描述一类对象的行为和状态
*'''类(class)'''      :类是一个模板,它描述一类对象的行为和状态
*'''方法(method)''':方法就是行为,一个类可以有很多方法。逻辑运算、数据修改以及所有动作都是在方法中完成的
**'''方法(method)''':方法就是行为,一个类可以有很多方法。逻辑运算、数据修改以及所有动作都是在方法中完成的
*'''实例变量()''':每个对象都有独特的实例变量,对象的状态由这些实例变量的值决定
**'''实例变量'''       :每个对象都有独特的实例变量,对象的状态由这些实例变量的值决定


===函数格式===
===函数格式===
第14行: 第14行:
#方法名: main
#方法名: main
#参数: string[]
#参数: string[]
变量引用类型
传值类型与引用类型。
* 传值类型,指基本数据类型(int, double, date, etc...)通过传值使用,只使用一块存储空间(分配在 stack 中)
* 引用类型,除了基本的变量类型之外的所有类型(如通过 class 定义的类型),使用两块存储空间(一块在 stack 中,一块在 heap 中)


===编译===
===编译===
第54行: 第60行:


* 在多态中,编译看左边,运行看右边
* 在多态中,编译看左边,运行看右边
=== 源文件声明规则 ===
* 一个源文件中只能有一个 public 类,多个非 public 类
* 源文件的名称应该和 public 类的类名保持一致,一般 interface 命名为IClassName,实现部分命名 ClassName
* 如果一个类定义在某个包(目录)中,那么 package 语句应该在源文件的首行
* 如果源文件包含 import 语句,那么应该放在 package 语句和类定义之间
* import 语句和 package 语句对源文件中定义的所有类都有效


[[分类:Develop]]
[[分类:Develop]]
[[分类:Java]]
[[分类:Java]]

2024年1月24日 (三) 10:46的版本

语法

  • 对象(object) :对象是类的一个实例,有状态和行为。例如,一条狗是一个对象,它的状态有:颜色、名字、品种;行为有:摇尾巴、叫、吃等
  • 类(class) :类是一个模板,它描述一类对象的行为和状态
    • 方法(method):方法就是行为,一个类可以有很多方法。逻辑运算、数据修改以及所有动作都是在方法中完成的
    • 实例变量 :每个对象都有独特的实例变量,对象的状态由这些实例变量的值决定

函数格式

Java function.jpg

  1. 访问修饰符: public, private
  2. 关键字: static
  3. 返回类型: void
  4. 方法名: main
  5. 参数: string[]

变量引用类型

传值类型与引用类型。

  • 传值类型,指基本数据类型(int, double, date, etc...)通过传值使用,只使用一块存储空间(分配在 stack 中)
  • 引用类型,除了基本的变量类型之外的所有类型(如通过 class 定义的类型),使用两块存储空间(一块在 stack 中,一块在 heap 中)

编译

javac [-encoding UTF-8 ] HelloWorld.java
执行: java HelloWorld

三大特性

封装,继承,多态

  • 封装(Encapsulation)是面向对象方法的重要原则,就是把对象的属性和操作(或服务)结合为一个独立的整体,并尽可能隐藏对象的内部实现细节
  1. 将类的某些信息隐藏在类的内部,不允许外部程序进行直接的访问调用
  2. 通过该类提供的方法来实现对隐藏信息的操作和访问
  3. 隐藏对象的信息
  4. 留出访问的对外接口
  1. 使用 private 修饰符,表示最小的访问权限
  2. 对成员变量的访问,提供 set, get 方法
  • 继承(Inheritance)就是子类继承父类的特征和行为,使得子类对象(实例)具有父类的实例域和方法,或子类从父类继承方法,使得子类具有父类相同的行为。当然,如果在父类中拥有私有属性(private 修饰),则子类是不能被继承的。
  1. 只支持单继承,即一个子类只允许有一个父类,但是可以实现多级继承,及子类拥有唯一的父类,而父类还可以再继承
  2. 子类可以拥有父类的属性和方法
  3. 子类可以拥有自己的属性和方法
  4. 子类可以重写(override)覆盖父类的方法
  • 态(Polymorphism)是同一个行为具有多个不同表现形式或形态的能力
  1. 消除类型之间的耦合关系,实现低耦合
  2. 灵活性
  3. 可扩充性
  4. 可替换性

理解多态

  • 多态体现形式
  1. 继承
  2. 父类引用指向子类
  3. 重写
  • 在多态中,编译看左边,运行看右边

源文件声明规则

  • 一个源文件中只能有一个 public 类,多个非 public 类
  • 源文件的名称应该和 public 类的类名保持一致,一般 interface 命名为IClassName,实现部分命名 ClassName
  • 如果一个类定义在某个包(目录)中,那么 package 语句应该在源文件的首行
  • 如果源文件包含 import 语句,那么应该放在 package 语句和类定义之间
  • import 语句和 package 语句对源文件中定义的所有类都有效