java中,定义一个静态类,里面有一个public void aMethod();实现某种功能,该方法算不算静态方法?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java中,定义一个静态类,里面有一个public void aMethod();实现某种功能,该方法算不算静态方法?相关的知识,希望对你有一定的参考价值。

在方法里面能否对非静态字段引用?

public void aMethod(); 该方法没有使用static关键字,不属于静态方法,所以可以使用非静态字段。 参考技术A 静态内部类可以定义静态方法,也可以定义非静态方法 参考技术B java静态内部类里面并不是所有的方法都是静态方法,看方法算不算静态方法,就看这个方法是否用 static 关键字修饰。有就是静态方法,没有就是非静态方法本回答被提问者采纳

Java课堂作业02

一、

1.问题:一个Java类文件中真的只能有一个公有类吗?

2.解答:

 

定义了两个公有类,如果里面什么也不加就能运行,但是在第二个里加了东西就不行了。

因为(以下转自互联网):一个Java源文件中最多只能有一个public类,当有一个public类时,源文件名必

须与之一致,否则无法编译,如果源文件中没有一个public类,则文件名与类中没有一致性要求。
至于main()不是必须要放在public类中才能运行程序。

每个编译单元只能有一个公开的接口,而这个接口就由其public 类来表示。如果能有多个public类,程序就无法识别该从哪里导入程序了。

二、

1.问题:把main()方法的返回值由 void 改为 int ,程序能编译通过吗?能运行吗?

2.解答:

看来是不行了。

三、

1.问题:为什么java规定作为程序入口点的main() 方法静态的?

2.解答(转自互联网):main函数其实也是所在类的一个方法,就比如一个类是test,那么该类的main其实就是test.main(String[] args),众所周知如果一个方法不是静态的,则要先实例化该类,比如要这样 A a=new A();
然后才能调用 a.main(); 
而这对于运行一个程序的主函数来说是不现实的,所以比如把main函数定义为static,使a.main()可以直接被调用。
因此,java规定了main函数必须是静态的。

四、

1.问题:Java变量遵循“同名变量的屏蔽原则”,请课后阅读相关资料弄清楚相关知识,然后自己编写一些测试代码,就象本示例一样,有意识地在不同地方定义一些同名变量,看看输出的到底是哪个值。

2.解答:

可以看到输出的是2。

五、

1.问题:

2.解答:int  short long byte 表示整数,其值是精确的,而float double均为浮点型,表示近似值,所以当整型转换成浮点类型的近似值会有精度损失。而ASCLL都是整数,所以char转换成整型不会有精度损失。

六、

1.问题:

以下代码的输出结果是什么?
  int X=100;
  int Y=200;
  System.out.println("X+Y="+X+Y);
  System.out.println(X+Y+"=X+Y");
 为什么会有这样的输出结果?

2.解答(以下资料来自互联网):

因为:当"X+Y="在前时,默认的把int型X,Y转化为String型,"X+Y="使编译器认为X,Y是String型的了,System.out.println()本身的参数默认为String型,遇到这种情况默认了转化,产生了如此结果,而第二个就是简单的输出,没有让计算器产生“误解”。

 

 

 

 

 

 

 

 

   

以上是关于java中,定义一个静态类,里面有一个public void aMethod();实现某种功能,该方法算不算静态方法?的主要内容,如果未能解决你的问题,请参考以下文章

java内部类总结

java内部类总结

JAVA语言基础课程作业02

c#在定义一个类时,public static class 类名;public class 类名;class 类名,这3个有啥不同吗?

访问修饰符 程序集 静态方法

JAVA学习之局部内部类,匿名内部类,静态内部类