java之main函数(笔记)
1.标准的main函数形式
对于main函数,只要是
public static void main(String[] args) public static void main(String... args) public static void main(String args[])
这样的,虚拟机都能找到并进入程序,如果你的main函数没有这样写,会提示找不到main函数。
2.main函数的修饰
(1)public,因为需要从外部调用;
(2)static,这时main所在的类还没有实例化;
(3)void,表明不返回值。
3.main函数的一般性
除了main是程序的入口外,main函数就是一个普通的函数,每个类都可以有。我们可以对main函数进行调用,重载...
4.重载main方法
public class test {
public static void main(int i) {
System.out.println("int main : " + i);
}
public void main(char c) {
System.out.println("char main : " + c);
}
public void main(String s) {
System.out.println("char main : " + s);
}
public static void main(String[] args) {
test temp = new test();
main(11);
temp.main('t');
temp.main("temp");
}
}
5.调用main方法
public class test {
private static boolean done = false;
public static void print() {
if(!done) {
done = true;
System.out.println("in print");
String[] args = {"a", "b", "c"};
main(args);
}
}
public static void main(String[] args) {
for(String s : args)
System.out.print(s + " ");
print();
}
}
6.继承main方法
class superTest {
public static void main(String[] args) {
System.out.println("in super");
}
}
public class test extends superTest{
public static void main(String[] args) {
superTest.main(args);
System.out.println("in test");
}
}
7.调用另外一个程序的main方法
这里我只是调用同一个.java文件下的类,你可以调用不同的.java的类,不同package的类的main方法,只要你能在Class.forName()里给出正确的路径。
package test;
import java.lang.reflect.Method;
public class testClass{
public static void main(String[] args) {
Class<another> c = null;
try {
c = (Class<another>) Class.forName("test.another"); //找到另外一个程序的class
Method m = c.getDeclaredMethod("main", args.getClass()); //找到该class的main方法
m.invoke(null, (Object) new String[0]);
} catch (Exception e) {
e.printStackTrace();
}
System.out.println("in test");
}
}
class another {
public static void main(String[] args) {
System.out.println("in another");
}
}
java之main函数(笔记)的更多相关文章
- Java面向对象 Main函数 静态的应用 单例设计模式
Java面向对象 Main函数 静态的应用与单例设计模式 知识概要 (1)Main函数的细解 (2)静态的应用,静态变量,静态代码块,静态函数 (3)单例设计模式 1.M ...
- eclipse的maven项目,如何使用java run main函数
项目使用maven管理,一般说来就使用jetty:run了.但是对于做功能测试和集成测试的用例,需要使用自定义的quickrun来运行进行测试环境的参数设定和功能隔离,google一番发现maven有 ...
- [Java基础]java的main函数
1.main函数详解 main在编程中的形式:public static void main(String[] args) { - } public : 公共的. 权限是最大,在任何情况下都可以访问. ...
- java中main函数解析(转载)
从写java至今,写的最多的可能就是主函数 public static void main(String[] args) {} 但是以前一直都没有问自己,为什么要这么写,因为在c语言中就没有这样子的要 ...
- java中main函数的String[] args
写java程序时main函数必须有一个字符串数组即String[] args 作用:用来获取用户从命令行输入的参数 如果main函数中不写字符串数组,则将会报错
- java里面main函数为什么要用static修饰
这学期刚开java,因为之前只写过C++和Python没接触过java,有些写法挺不习惯的,今天写完一个程序,run的时候发现提示the selection can't be launched.... ...
- java中main函数解析
从写java至今,写的最多的可能就是主函数 public static void main(String[] args) {} 但是以前一直都没有问自己,为什么要这么写,因为在c语言中就没有这样子的要 ...
- java中main函数怎么调用外部非static方法
使用外部方法时(不管是static还是非static),都要先new一个对象,才能使用该对象的方法. 举例如下: 测试函数(这是错误的): public class Test { public sta ...
- java的main函数组成
package test;/*public static void main(String[] args)主函数特殊之处:1.格式是固定的2.被jvm(虚拟机)所识别和调用 public:因为权限必须 ...
随机推荐
- [工作中的设计模式]备忘录模式memento
一.模式解析 备忘录对象是一个用来存储另外一个对象内部状态的快照的对象.备忘录模式的用意是在不破坏封装的条件下,将一个对象的状态捕捉(Capture)住,并外部化,存储起来,从而可以在将来合适的时候把 ...
- 解决Myeclipse10 Building Workspace速度慢的问题
解决方法如下: 选择项目,选择Project -> Properties -> Builders,取消JavaScript Validator,validation或者其它你认为没必要的选 ...
- js 数组(Array)
一.数组 稠密数组(非稀疏数组) 稀疏数组 二.数组的添加和删除 我们已经常见过添加数组元素最简单的方法:为新索引赋值;也可以使用push()方法在数组末尾增加一个或者多个元素: a = []; a. ...
- EF框架step by step(5)—处理实体简单属性
EF框架会对实体进行跟踪,对实体的每个属性当前值和原始值及其状态进行跟踪,记录.当前值是指实体属性当前的被赋予的值,而原始值是指实体最初从数据库读取或者附加到DbContext时的值. 先通过简单的代 ...
- WPF中获取形状范围
在没加入到Canvas时,也能获取形状的方法: var polygon = new Polygon(); polygon.Points.Add(new Point(xStart, yStart)); ...
- ural 2064. Caterpillars
2064. Caterpillars Time limit: 3.0 secondMemory limit: 64 MB Young gardener didn’t visit his garden ...
- BZOJ4112 : [Wf2015]Pipe Stream
枚举答案,考虑将速度区间等长地划分成若干个小区间. 设$n_i$表示$i$次敲击能得到的区间数,$v_i$表示$i$次敲击之后答案落在$[v1,v_i]$之间,则$n_0=1,v_0=v2$. 因为对 ...
- over
overflow内容溢出要用到: scroll(内容溢出,出现滚动条) auto(自动适应) hidden(超出隐藏) overflow-y:scroll: 沿着y轴出现滚动条: overflow-x ...
- 为OpenResty增加ngx_pagespeed模块进行优化
1.下载ngx_pagespeed模块 wget https://github.com/pagespeed/ngx_pagespeed/archive/v1.8.31.4-beta.zip unzip ...
- [Leetcode] Maximum Gap
Given an unsorted array, find the maximum difference between the successive elements in its sorted f ...