Java线程建立以及对Java对象操作

对象

 一.面向对象的探讨发现

首先,最基本的,在Java中,对象是类的具体实例,它具有属性和方法。

以下是关于Java对象的一些要点和探讨:

  1. 类和对象的关系:类是一个抽象的概念,描述了对象的属性和行为,而对象是类的具体实例。对象是按照类的定义创建的,每个对象都拥有独立的属性值。

package pojo;

public class Workid {
    //账号实体类
    private String account;
    private String password;

    public void setWorkid(String account, String password) {
        this.account = account;
        this.password = password;
    }

    public String getWorkid() {
        return this.account + " " + this.password;
    }
}
  1. 创建对象:要创建一个对象,首先需要定义一个类。类是通过使用class关键字定义的,并且可以包含属性和方法。然后,使用new关键字和类的构造函数来实例化对象。

Workid workid = new Workid();
  1. 对象的属性和方法:对象可以具有属性和方法。属性是用于描述对象的特征或状态的变量,而方法是对象执行的操作或行为。可以通过使用点运算符来访问对象的属性和方法。

String account = workid.account;
  1. 对象的状态和行为:对象的状态由其属性值决定,而对象的行为由其方法执行确定。通过改变对象的属性值,可以改变对象的状态。通过调用对象的方法,可以执行与对象相关的操作。

  2. 对象的封装:Java中的面向对象编程的封装概念,将数据和操作封装在一个单独的实体中。通过使用访问修饰符(如publicprivate等)来控制对象的属性和方法的可访问性。这样可以隐藏对象的实现细节,提高代码的安全性和可维护性。

public class Person {
    private String name;
    private int age;
    
    // 设置姓名
    public void setName(String name) {
        this.name = name;
    }
    
    // 获取姓名
    public String getName() {
        return name;
    }
    
    // 设置年龄
    public void setAge(int age) {
        this.age = age;
    }
    
    // 获取年龄
    public int getAge() {
        return age;
    }
    
    // 显示个人信息
    public void displayInfo() {
        System.out.println("Name: " + name);
        System.out.println("Age: " + age);
    }
}

public class Main {
    public static void main(String[] args) {
        // 创建一个Person对象
        Person person = new Person();
        
        // 设置对象的属性
        person.setName("John");
        person.setAge(25);
        
        // 获取对象的属性
        String name = person.getName();
        int age = person.getAge();
        
        // 显示对象的信息
        person.displayInfo();
    }
}
  1. 对象的继承:Java中的类可以通过继承关系进行扩展。继承是面向对象编程的重要概念之一,它允许类继承另一个类的属性和方法。继承可以通过使用关键字extends来实现。通过继承,子类可以使用父类的属性和方法,并且可以重写或添加额外的功能。

// 父类: 动物类
class Animal {
    protected String name;
    
    public void setName(String name) {
        this.name = name;
    }
    
    public void eat() {
        System.out.println(name + " is eating.");
    }
}

// 子类: 猫类,继承自动物类
class Cat extends Animal {
    public void meow() {
        System.out.println(name + " is meowing.");
    }
}

// 主类
public class Main {
    public static void main(String[] args) {
        // 创建一个猫对象
        Cat cat = new Cat();
        
        // 设置对象的属性
        cat.setName("Tom");
        
        // 调用继承自父类的方法
        cat.eat();
        
        // 调用子类特定的方法
        cat.meow();
    }
}

二.顺便一提使用过notepad写代码时遇到的小问题

1.第一个刚开始反的小错误是大小写的问题:

显示如下:

C:\Users\Desktop>javac hello.Java
错误: 仅当显式请求注释处理时才接受类名称 'hello.Java'
1 个错误

 即后缀java需要小写。

2.xxx是公共的,应在名为xxx.java 的文件中声明"报错。

类名与java文件名不符,修改至一致即可。

另外,一个class只能有一个public类,且一个public类中不能有另一个public类。

继承

1. 继承Thread类

public class MyThread extends Thread {
    public void run() {
        // 执行线程任务
    }
}

// 创建并启动线程
MyThread thread = new MyThread();
thread.start();

2. 实现Runnable接口

public class MyRunnable implements Runnable {
    @Override
    public void run() {
        // 执行线程任务
    }
}

// 创建并启动线程
MyRunnable myRunnable = new MyRunnable();
Thread thread = new Thread(myRunnable);
thread.start();

3. 使用匿名内部类实现Runnable接口

Runnable myRunnable = new Runnable() {
    @Override
    public void run() {
        // 执行线程任务
    }
};

// 创建并启动线程
Thread thread = new Thread(myRunnable);
thread.start();

4. 使用Lambda表达式实现Runnable接口

Runnable myRunnable = () -> {
    // 执行线程任务
};

// 创建并启动线程
Thread thread = new Thread(myRunnable);
thread.start();

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值