JavaSE基础知识分享(三)

打印 上一主题 下一主题

主题 918|帖子 918|积分 2754

写在前面

前面给了关于java方法和数组的十题编程题,如果你能有思绪很快速地完成它,说明你这部门的基础知识很好,接下来就来看看背面的面向对象的相关知识吧!
面向对象

概述:不停地创建对象,利用对象,指挥对象做事情的思想。
类和对象的关系:

类:
是java的根本单位,主要利用用于描述现实生活的事物。由成员变量(属性)和成员方法(行为)以及构造方法组成。
对象:
可以看成是一个类的具体的实例,通过一个类造出多个不同的对象。语句界说格式:  类名 对象名 = new 类名();
对象访问成员的方式:
成员变量:对象名.成员变量
成员方法:对象名.成员方法(xxx)
接下来开始讲面向对象的三大特征:
封装

概述:隐藏类中实现细节,对外提供公共的方法。
private关键字
  1. // 私有的,是一种权限修饰符。
  2. // 可以修饰成员变量,构造方法,成员方法。
  3. // 被private关键字修饰的成员只能在本类中进行访问。
  4. private int privateVariable;
  5. private void privateMethod() {
  6.     // 只能在本类中访问的方法体
  7. }
复制代码
this关键字
  1. // 在方法中使用,代表调用当前该方法的对象。
  2. // 访问成员变量: this.成员变量
  3. // 访问成员方法: this.成员方法(...)
  4. // 构造方法调用: this(...)
  5. public class Example {
  6.     private int number;
  7.     public Example(int number) {
  8.         this.number = number; // 使用this访问成员变量
  9.     }
  10.     public void setNumber(int number) {
  11.         this.number = number; // 使用this访问成员变量
  12.     }
  13. }
复制代码
构造方法
  1. // 在创建对象时调用,用于在堆内存中为对象开辟空间。
  2. // 方法名与类名相同,没有返回值类型。
  3. // 构造方法可以发生重载,可以传入参数,在创建对象的同时给对象的成员变量赋值。
  4. // 如果不提供构造方法,JVM会提供一个默认的无参构造方法;若提供了构造方法,则系统不再提供默认构造方法。
  5. public class Student {
  6.     private String name;
  7.     private int age;
  8.     // 无参构造方法
  9.     public Student() {
  10.         // 默认构造方法体
  11.     }
  12.     // 带参数的构造方法
  13.     public Student(String name, int age) {
  14.         this.name = name;
  15.         this.age = age;
  16.     }
  17. }
复制代码
static关键字
  1. // 静态的,可以修饰成员和成员方法,静态代码块,静态内部类。
  2. // 可以直接通过类名访问静态成员变量和静态成员方法。
  3. // 随着类的加载而加载,优先于对象而存在。
  4. // 静态成员方法只能访问静态成员,非静态成员方法可以访问静态和非静态成员。
  5. // 推荐使用类名访问静态成员。
  6. public class Example {
  7.     private static int staticVariable = 10;
  8.     private int instanceVariable = 20;
  9.     public static void staticMethod() {
  10.         System.out.println("Static method called.");
  11.     }
  12.     public void instanceMethod() {
  13.         System.out.println("Instance method called.");
  14.         System.out.println("Static variable accessed: " + staticVariable);
  15.         System.out.println("Instance variable accessed: " + instanceVariable);
  16.     }
  17. }
复制代码
帮助文档
  1. // 如何使用帮助文件:
  2. // 1. 双击打开。
  3. // 2. 点击搜索,输入要查询的类。
  4. // 3. 观察所属包,若属于java.lang包下可直接使用,否则需导包。
  5. // 4. 查看类的继承和实现关系。
  6. // 5. 查看类的描述。
  7. // 6. 查看构造方法,若无构造方法可能是工具类。
  8. // 7. 查看成员变量。
  9. // 8. 查看成员方法。
复制代码
代码块
  1. // 局部代码块: 在方法内部,使用大括号括起来的代码块。
  2. public class Example {
  3.     public void someMethod() {
  4.         {
  5.             // 局部代码块
  6.             int x = 10;
  7.             System.out.println("Inside local block: " + x);
  8.         }
  9.     }
  10. }
  11. // 构造代码块: 类中方法外的代码块,每创建一次对象都会执行一次。
  12. public class Example {
  13.     {
  14.         // 构造代码块
  15.         System.out.println("Instance initialization block called.");
  16.     }
  17.     public Example() {
  18.         // 构造方法
  19.         System.out.println("Constructor called.");
  20.     }
  21. }
  22. // 静态代码块: 使用static修饰,类加载时执行,仅执行一次。
  23. public class Example {
  24.     static {
  25.         // 静态代码块
  26.         System.out.println("Static block called.");
  27.     }
  28.     public static void main(String[] args) {
  29.         System.out.println("Main method called.");
  30.     }
  31. }
复制代码
引用和根本数据类型当做参数
  1. // 当基本数据类型作为方法参数类型时,调用时传入具体数值。
  2. public class Example {
  3.     public void methodWithPrimitive(int number) {
  4.         // 方法体
  5.     }
  6. }
  7. // 当引用数据类型作为方法参数类型时,调用时传入该引用数据类型的对象。
  8. public class Example {
  9.     public void methodWithReference(Student student) {
  10.         // 方法体
  11.     }
  12. }
复制代码
静态变量和成员变量的区别


  • 所属不同:

    • 静态变量: 属于类,也称为类变量。
    • 成员变量: 属于对象,也称为实例变量或对象变量。

  • 内存中位置不同:

    • 静态变量: 存储于方法区的静态区。
    • 成员变量: 存储于堆内存中的对象内部。

  • 内存出现时间不同:

    • 静态变量: 随着类的加载而加载,随着类的卸载而卸载。
    • 成员变量: 随着对象的创建而存在,随着对象的烧毁而烧毁。

  • 调用方式不同:

    • 静态变量: 可以通过类名直接调用,也可以通过对象名调用。
    • 成员变量: 只能通过对象名调用。

好了,本日的分享结束了,文末会有两题练习题给到大家,如果感兴趣的可以写一下试试看,明后天我会出封装这部门的相关标题给大家练练手,一起进步吧!
练习标题:

1.界说一个类Demo,其中界说一个求两个数据和的方法,界说一个测试类Test,举行测试。
2.界说一个长方形类,界说求周长和面积的方法,然后界说一个测试类Test2,举行测试。

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

去皮卡多

金牌会员
这个人很懒什么都没写!
快速回复 返回顶部 返回列表