[特殊字符] Java面向对象基础知识详解(小白友好版)

一、类和对象:万物皆可"模板化"

1.1 类与对象的关系

  • :相当于设计图纸(如"手机设计图")
  • 对象:根据图纸制造的实体(如"你的华为P50手机")34
代码演示:

// 类定义示例:手机设计图 class Phone { String brand; // 品牌属性 void call() { // 打电话方法 System.out.println(" 正在拨号..."); } } // 创建对象:根据图纸造手机 Phone myPhone = new Phone();

1.2 成员变量 vs 局部变量

成员变量局部变量
作用域整个类内有效仅在方法内部
默认值自动初始化必须手动赋值
生命周期对象存在即存在方法执行时存在 15

二、面向对象三大核心特性

2.1 封装:保护隐私的"保险箱"

 

代码演示:

class BankAccount { private double balance; // 私有化:钱锁在保险箱 // 存取钱需要通过验证(getter/setter) public void deposit(double money) { if(money > 0) this.balance += money; } }

作用:防止数据被随意修改,保障系统安全25

2.2 继承:基因传递的"家族树"

 

代码演示:

// 父类:动物 class Animal { void eat() { System.out.println(" 吃东西"); } } // 子类继承父类能力 class Cat extends Animal { void meow() { System.out.println(" 喵喵叫"); } }

特点:子类自动获得父类属性和方法,可扩展新功能13

2.3 多态:百变星君的"变身术"

 

代码演示:

Animal animal = new Cat(); // 父类引用指向子类对象 animal.eat(); // 实际调用的是Cat的eat方法

应用场景:同一方法在不同子类中有不同实现24


三、小白必须掌握的语法基础

3.1 构造方法:对象的"出生证明"

 

代码演示:

class Student { String name; // 构造方法:创建对象时必须执行 public Student(String name) { this.name = name; } } // 创建对象时必须传参 Student stu = new Student("张三");

特点:方法名与类名相同,没有返回值类型15

3.2 static关键字:共享的"公共资源"

 

代码演示:

class School { static String principal = "李校长"; // 所有学生共享的校长 static void ringBell() { // 不用创建对象就能调用 System.out.println(" 上课铃响了"); } }

应用场景:工具类方法、共享配置等35


四、常见误区避坑指南

4.1 对象未初始化

 

代码演示:

Phone badPhone; // 错误:未new对象 badPhone.call(); // 会报NullPointerException

4.2 == 和 equals 的区别

 

代码演示:

String s1 = new String("hello"); String s2 = new String("hello"); System.out.println(s1 == s2); // false(比较内存地址) System.out.println(s1.equals(s2)); // true(比较内容)

4.3 方法重载 vs 重写

重载(Overload)重写(Override)
发生位置同一类中父子类之间
参数列表必须不同必须相同
返回类型可修改必须相同或兼容 5

五、动手实践建议

  1. 创建一个Book类,包含书名、价格属性
  2. 添加构造方法初始化属性
  3. 编写displayInfo()方法显示书籍信息
  4. 创建多个Book对象并测试方法
 

代码演示:

// 参考答案 class Book { String title; double price; public Book(String t, double p) { title = t; price = p; } void displayInfo() { System.out.println(title + " 价格:" + price); } }

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值