Java基础关于含有和不含static的方法的访问

简介: Java基础关于含有和不含static的方法的访问

示例代码01:


public class Test {
  //带有static的方法
  public static void method1(){
  //调用doSome
  //完整方式的调用
  Test.doSome();
  //省略方式的调用
  doSome();
  //调用doOther
  //完整方式的调用
  Test t = new Test();
  t.doOther();
  //省略方式的调用(无)
  //访问i
  //完整方式访问
        System.out.println(t.i);
  //省略方式访问(无)
  }
  //没有static的方法
  public void method2(){
  //调用doSome
  //完整方式的调用
  Test.doSome();
  //省略方式的调用
  doSome();
  //调用doOther
  //完整方式的调用
  this.doOther();
  //省略方式的调用
  doOther();//疑问(this可省略!)
  //访问i
  //完整方式访问
  System.out.println(this.i);
  //省略方式访问
  System.out.println(i);
  }
  //主方法
  public static void main(String[] args){
  //要求在这里编写程序调用method1
  //使用完整方式调用
  Test.method1();
  //使用省略方式调用
  method1();
  //要求在这里编写程序调用method2
  //使用完整方式调用
  Test t = new Test();
  t.method2();
  //使用省略方式调用(无)
  //访问i
     //完整方式访问
  System.out.println(t.i);
     //省略方式访问(无)
  }
  //没有static的变量
  int i = 10;
  //带有static的方法
  public static void doSome(){
  System.out.println("do some!");
  }
  //没有static的方法
  public void doOther(){
  System.out.println("do other!");
  }
}


示例代码02:


/**
 * 什么时候程序在运行的时候出现空指针异常呢?
 *    空引用访问实例相关的数据,因为实例相关的数据就是对象相关的数据,
 *    这些数据在访问的时候,必须有对象的参与,当空引用的时候,对象不存在
 *    访问这些实例数据一定会出现空指针异常
 *    
 * 实例相关的数据包括:
 *    实例变量【对象需要存在】
 *    实例方法【对象需要存在】
 * */
public class Test01 {
  public static void main(String[] args) {
  Test.doSome();
  doSome();
  Test t = new Test();
  t.doSome();
  //引用是空
  t = null;
  //带有static方法,其实可以采用类名的方式访问,也可以采用引用的方式访问
  //但是即使采用引用的方式访问,实际上执行的时候和引用指向的对象无关
  t.doSome();//这里不会出现空指针异常
  }
  //带有static的方法,需要使用“类名.”的方式访问
  public static void doSome(){
  System.out.println("do some!");
  }
}
相关文章
|
1天前
|
存储 Java
深入理解java对象的访问定位
这篇文章深入探讨了Java对象的访问定位机制,比较了使用句柄和直接指针两种主流的对象访问方式,并指出了它们各自的优势,例如句柄访问在对象移动时的稳定性和直接指针访问的速度优势。
7 0
深入理解java对象的访问定位
|
1天前
|
Java
java中父类方法return this.对象还是变量,子类去调用this.这个方法的问题
本文探讨了在Java中,当父类的方法返回`this`对象或变量时,子类调用该方法的行为,以及`this`关键字在不同类中调用方法时的指向问题。
5 0
java中父类方法return this.对象还是变量,子类去调用this.这个方法的问题
|
2天前
|
Java
Java关键字 —— static 与 final 详细解释!一看就懂 有代码实例运行!
这篇文章详细解释了Java中static和final关键字的用法,包括它们修饰类、方法、变量和代码块时的行为,并通过代码示例展示了它们的具体应用。
21 0
Java关键字 —— static 与 final 详细解释!一看就懂 有代码实例运行!
|
12天前
|
Java
java小工具util系列5:java文件相关操作工具,包括读取服务器路径下文件,删除文件及子文件,删除文件夹等方法
java小工具util系列5:java文件相关操作工具,包括读取服务器路径下文件,删除文件及子文件,删除文件夹等方法
26 4
|
14天前
|
安全 Java API
Java根据URL获取文件内容的实现方法
此示例展示了如何安全、有效地根据URL获取文件内容。它不仅展现了处理网络资源的基本技巧,还体现了良好的异常处理实践。在实际开发中,根据项目需求,你可能还需要添加额外的功能,如设置连接超时、处理HTTP响应码等。
81 4
|
15天前
|
存储 Java
Java之静态(static)与实例(instance)
Java之静态(static)与实例(instance)
|
14天前
|
安全 Java 编译器
java访问类字段
java访问类字段
|
13天前
|
安全 Java 开发者
Java修饰符与封装:理解访问权限、行为控制与数据隐藏的重要性
Java中的修饰符和封装概念是构建健壯、易维护和扩展的Java应用程序的基石。通过合理利用访问权限修饰符和非访问修饰符,开发者能够设计出更加安全、灵活且高效的代码结构。封装不仅是面向对象编程的核心原则之一,也是提高软件项目质量和可维护性的关键策略。
12 1
|
16天前
|
安全 Java
java调用方法
java调用方法
21 4
|
1天前
|
Java 数据安全/隐私保护 容器
java当中组件和窗口的相容问题(里面包含了这些方法的作用)
Java窗口和组件的布局指南,教你如何打造一个既美观又实用的GUI界面。
6 0