Java基础手册二(类和对象 对象创建和使用 面向对象封装性 构造方法与参数传递 this关键字 static关键字 继承 多态 方法覆盖 final关键字 访问控制权限修饰符)

简介: Java基础手册二(类和对象 对象创建和使用 面向对象封装性 构造方法与参数传递 this关键字 static关键字 继承 多态 方法覆盖 final关键字 访问控制权限修饰符)

类和对象

在Java中,类是一种模板或蓝图,用于创建对象。对象是类的实例,具有类定义的属性和行为。

示例代码:

// 定义一个类
public class Car {
    // 类的属性
    String color;
    int speed;
    
    // 类的方法
    void drive() {
        System.out.println("Driving at speed: " + speed);
    }
}
// 创建对象
Car myCar = new Car();
myCar.color = "red";
myCar.speed = 60;
myCar.drive();

对象创建和使用

在Java中,使用new关键字创建类的对象,并通过对象访问类的属性和方法。

示例代码:

// 创建对象
Car myCar = new Car();
// 访问属性
myCar.color = "blue";
myCar.speed = 80;
// 调用方法
myCar.drive();

面向对象封装性

封装是面向对象编程的核心概念之一,它指的是将数据和操作数据的方法捆绑在一起,以防止对数据的直接访问。

示例代码:

public class Car {
    private String color;
    private int speed;
    
    public void setColor(String color) {
        this.color = color;
    }
    
    public void setSpeed(int speed) {
        this.speed = speed;
    }
    
    public String getColor() {
        return color;
    }
    
    public int getSpeed() {
        return speed;
    }
}

构造方法与参数传递

构造方法是一种特殊的方法,用于在创建对象时初始化对象。它与类同名,没有返回类型,并且在创建对象时自动调用。

示例代码:

public class Car {
    private String color;
    private int speed;
    
    // 构造方法
    public Car(String color, int speed) {
        this.color = color;
        this.speed = speed;
    }
    
    // 其他方法...
}

this关键字

this关键字在Java中表示当前对象的引用。它可以用于引用当前对象的属性或调用当前对象的方法。

示例代码:

public class Car {
    private String color;
    
    // 构造方法
    public Car(String color) {
        this.color = color;  // 使用this关键字引用当前对象的属性
    }
    
    // 方法
    public void printColor() {
        System.out.println("Car color: " + this.color);  // 使用this关键字调用当前对象的方法
    }
}

static关键字

static关键字用于声明静态变量和静态方法。静态变量属于类,而不是对象,因此所有对象共享相同的静态变量。

示例代码:

public class Car {
    private static int count;  // 静态变量
    
    // 静态方法
    public static int getCount() {
        return count;
    }
}

继承

继承是一种面向对象编程的机制,允许一个类(子类)继承另一个类(父类)的属性和方法。

示例代码:

// 父类
public class Vehicle {
    public void drive() {
        System.out.println("Driving...");
    }
}
// 子类
public class Car extends Vehicle {
    // 其他方法...
}

多态

多态是面向对象编程的重要概念,它允许一个对象对方法的调用可能会引起不同类的方法调用。

示例代码:

// 父类
public class Animal {
    public void sound() {
        System.out.println("Animal makes a sound");
    }
}
// 子类1
public class Dog extends Animal {
    public void sound() {
        System.out.println("Dog barks");
    }
}
// 子类2
public class Cat extends Animal {
    public void sound() {
        System.out.println
("Cat meows");
    }
}

方法覆盖

方法覆盖是指子类重新定义父类中的方法,以提供新的实现。

示例代码:

// 父类
public class Animal {
    public void sound() {
        System.out.println("Animal makes a sound");
    }
}
// 子类
public class Dog extends Animal {
    @Override
    public void sound() {
        System.out.println("Dog barks");
    }
}

final关键字

final关键字用于声明最终变量,一旦赋值后就不能修改。它还可以用于修饰类和方法,表示不能继承或覆盖。

示例代码:

public class Circle {
    private final double PI = 3.14;
}

访问控制权限修饰符

Java中有四种访问控制权限修饰符:public、protected、default和private,用于控制类、方法和变量的访问权限。

示例代码:

// 默认访问修饰符,只能在同一包中访问
class MyClass {
    // 私有变量,只能在本类中访问
    private int x;
    
    // 公共方法,可以在任何地方访问
    public void setX(int x) {
        this.x = x;
    }
}

感谢您阅读本篇博客!

如果您有任何疑问或建议,请随时在评论区留言。

相关文章
|
存储 安全 Java
探索 Java 静态变量(static)的奥秘
本文深入探讨了Java中的静态变量(`static`),从初印象、使用场景、访问方式、初始化、线程安全、优缺点到最佳实践,全面解析其特性和应用场景。静态变量属于类而非实例,适用于共享数据、定义全局常量和工具类中的变量。它在类加载时初始化,生命周期贯穿整个程序运行。然而,多线程环境下需注意线程安全问题,可通过`synchronized`或原子类解决。优点包括共享数据方便和提高性能,但也存在线程安全和代码耦合度增高的缺点。最佳实践建议谨慎使用、保证线程安全、遵循命名规范并封装访问。掌握静态变量的正确用法,能让你的代码更加高效简洁。
1320 11
|
设计模式 JavaScript 前端开发
java中的static关键字
欢迎来到瑞雨溪的博客,博主是一名热爱JavaScript和Vue的大一学生,致力于全栈开发。如果你从我的文章中受益,欢迎关注我,将持续分享更多优质内容。你的支持是我前进的动力!🎉🎉🎉
686 8
|
存储 Java
Java 中的静态(static)
【10月更文挑战第15天】静态是 Java 语言中一个非常重要的特性,它为我们提供了一种方便、高效的方式来管理和共享资源。然而,在使用过程中,我们需要谨慎考虑其优缺点,以确保代码的质量和可维护性。
|
Java 编译器
在Java中,关于final、static关键字与方法的重写和继承【易错点】
在Java中,关于final、static关键字与方法的重写和继承【易错点】
428 5
|
Java 程序员
Java 面试高频考点:static 和 final 深度剖析
本文介绍了 Java 中的 `static` 和 `final` 关键字。`static` 修饰的属性和方法属于类而非对象,所有实例共享;`final` 用于变量、方法和类,确保其不可修改或继承。两者结合可用于定义常量。文章通过具体示例详细解析了它们的用法和应用场景。
507 3
|
安全 Java 数据安全/隐私保护
如何配置 Java 安全管理器来避免访问控制异常
配置Java安全管理器以防止访问控制异常,需在启动JVM时通过 `-Djava.security.manager` 参数启用,并设置安全策略文件,定义权限规则,限制代码执行操作,确保应用安全。
1260 1
|
Java 开发者
奇迹时刻!探索 Java 多线程的奇幻之旅:Thread 类和 Runnable 接口的惊人对决
【8月更文挑战第13天】Java的多线程特性能显著提升程序性能与响应性。本文通过示例代码详细解析了两种核心实现方式:Thread类与Runnable接口。Thread类适用于简单场景,直接定义线程行为;Runnable接口则更适合复杂的项目结构,尤其在需要继承其他类时,能保持代码的清晰与模块化。理解两者差异有助于开发者在实际应用中做出合理选择,构建高效稳定的多线程程序。
305 7
|
Java 开发者
在 Java 中,一个类可以实现多个接口吗?
这是 Java 面向对象编程的一个重要特性,它提供了极大的灵活性和扩展性。
1326 58
|
Java 开发者
在Java多线程编程中,创建线程的方法有两种:继承Thread类和实现Runnable接口
【10月更文挑战第20天】在Java多线程编程中,创建线程的方法有两种:继承Thread类和实现Runnable接口。本文揭示了这两种方式的微妙差异和潜在陷阱,帮助你更好地理解和选择适合项目需求的线程创建方式。
441 3
|
Java
Java中多线程编程的基本概念和创建线程的两种主要方式:继承Thread类和实现Runnable接口
【10月更文挑战第20天】《JAVA多线程深度解析:线程的创建之路》介绍了Java中多线程编程的基本概念和创建线程的两种主要方式:继承Thread类和实现Runnable接口。文章详细讲解了每种方式的实现方法、优缺点及适用场景,帮助读者更好地理解和掌握多线程编程技术,为复杂任务的高效处理奠定基础。
358 2

热门文章

最新文章