跟着刚哥梳理java知识点——HelloWorld和常见问题(一)
1、按照国际惯例,写一段输出HelloWorld的java语句:
public class HelloWorld {
//这是main方法,程序的主入口
public static void main(String[] args) {
/*
* 输出语句:System.out.println
*/
System.out.print("Hi ");
System.out.println("Hello World");
}
}
输出结果:Hi Hello World
【知识点】:
1)HelloWorld是类。类的修饰符:
① 访问控制修饰符:public、default。
② 非访问控制修饰符:static、final、abstract。
2) main方法是程序的入口。名字必须是main,必须是public static void 类型的,必须接收一个字符串数组的参数。
① jvm运行这个类的时候,首先先调用HelloWorld.main方法,所以必须用public static修饰。(jvm可不会给你实例化)
② jvm要求这个main不能有任何返回值,所以必须用void修饰。(你给jvm返回,你认为他会屌你吗)
③ jvm要求main方法中必须有一个String[]的入参(不按照我大jvm规范,老子认为你是非法的)。
④ 至于入参的名字jvm就不管了(啥都管了,下面人都起义不干了)
结论:main()方法定义必须是:public static void main(String[] 数组参数名)
3)main()方法中可以throw Exception
public class TestMain {
public static void main(String[] args) throws Exception {
System.out.println("Hello World");
throw new Exception("");
}
}
4) System.out.print和System.out.println的区别:一行和下一行(换行)的区别。
2、源文件下可以创建多个类
什么是源文件?一个.java文件,我们把这个java文件叫做源文件。例如上面例子HelloWorld.class就是源文件
public class HelloWorld {
//这是main方法,程序的入口
public static void main(String[] args) {
System.out.println("Hello World");
}
}
class Person{ }
class Car{ }
上面看到HelloWolrd.java这个源文件中写了3个类HelloWorld、Person和Car。
【知识点】:
1)一个Java源文件中有几个类就会编译成几个.class文件。以上如果用javac.exe命令去编译,则会生成3个.class文件。
2)一个源文件中有且只能有一个public访问控制修饰符。
3)main方法必须放在源文件public访问控制修饰符的类中。
4)被声明为public的类名必须和源文件名一致。
跟着刚哥梳理java知识点——HelloWorld和常见问题(一)的更多相关文章
- 跟着刚哥梳理java知识点——深入理解String类(九)
一.String类 想要了解一个类,最好的办法就是看这个类的实现源代码,来看一下String类的源码: public final class String implements java.io.Ser ...
- 跟着刚哥梳理java知识点——面向对象(八)
面向对象的核心概念:类和对象. 类:对一类事物描述,是抽象的.概念上的定义. 对象:实际存在的该类事物的每个个体,因而也成为实例(Instance). Java类及类的成员:属性(成员变量Field) ...
- 跟着刚哥梳理java知识点——多线程(十六)
创建多线程第一种方式:① 继承:继承Thread.② 重写:重写Thread类的run()方法③ 创建:创建一个子类的对象④ 调用:调用线程的start()方法,启动此线程,调用run()方法 cla ...
- 跟着刚哥梳理java知识点——变量之间的类型转换(四)
变量之间的类型转换主要包括自动类型转换和强制类型转换. 1.自动类型转换:当容量小的数据类型与容量大的数据类型做运算时,容量小的会自动的转换成容量大的类型. [知识点]: a)char,byte,sh ...
- 跟着刚哥梳理java知识点——注释(二)
1.单行注释 // //这是main方法,程序的入口 public static void main(String[] args) { //输出语句 System.out.println(" ...
- 跟着刚哥梳理java知识点——IO(十五)
凡是与输入.输出相关的类.接口都定义在java.io包下 java.io.File类 1.File是一个类,可以有构造器创建其对象.此对象对应着一个文件或者一个目录. 2.File中的类,仅涉及到如何 ...
- 跟着刚哥梳理java知识点——枚举和注解(十四)
enum Season{ SPRING("spring","春暖花开"), SUMMER("summer","夏日炎炎" ...
- 跟着刚哥梳理java知识点——泛型(十三)
一. 泛型概念的提出(为什么需要泛型)? 首先,我们看下下面这段简短的代码: public class GenericTest { public static void main(String[] a ...
- 跟着刚哥梳理java知识点——集合(十二)
Java集合分为Collection和Map两种体系 一.Collection接口: Collections接口为我们提供了以下方法: size():返回集合中元素的个数 add(Object obj ...
随机推荐
- angular 2 animate 笔记
好久没有在这里写点笔记了.时隔已久,angular1 去 angular2 咯 笔记来源:https://angular.cn/docs/ts/latest/guide/animations.html ...
- 关于adb重启的一些问题
有时候我们在使用eclipse启动虚拟机进行程序测试的时候会提示,要我们重启adb和eclipse,这个时候,重启adb的方式就是,使用cmd定位到adb所在的文件夹,然后输入指令:adb kill- ...
- 你知道自己执行的是哪个jre吗?
多个JRE 我在做<Java日志工具之java.util.logging.Logger>的DEMO时,修改java.util.logging.Logger的配置文件,怎么修改都不起作用,因 ...
- java装箱跟拆箱解析
/** * 在jdk1.5之后,java为基本数据类型到对应的应用数据类型提供了自动拆箱装箱操作 * 不管是自动拆箱还是自动装箱都是应用数据类型有的方法,基本数据类型是没有任何方法可调用的 *从概念上 ...
- Objective-C日记-之编码对象属性
NSCoder类 1,概述 将对象的实例变量和其他数据编码为数据块,然后将他们存在到磁盘当中:以后将这些数据块读回到内存中,并且还基于保存的数据创建新的对象,也称序列化或反序列化. 2,用法 a,首先 ...
- 1724: [Usaco2006 Nov]Fence Repair 切割木板
1724: [Usaco2006 Nov]Fence Repair 切割木板 Time Limit: 5 Sec Memory Limit: 64 MBSubmit: 854 Solved: 42 ...
- Ionic android 底部tabs
ionic android tabs 默认显示在上部,如果要跟苹果一起统一在底部,那么可以在app.js添加配置 .config(function($ionicConfigProvider) { $i ...
- java之JDK的环境变量配置
JDK是什么? JDK是整个java开发的核心,它包含了JAVA的运行环境,JAVA工具和JAVA基础的类库. JDK包含的基本组件包括 java –--------> 运行编译后的java程序 ...
- 使用python landport库快速实现排行榜
背景介绍 排行榜业务使用的频率实在太高了,各种活动都会使用排行榜.经过多次开发后我觉得实现一个简单的排行榜库,它能够完成当前我遇到的所有业务逻辑问题,也希望能够帮助到想要快速开发排行榜业务的同行. 我 ...
- TimeUnit枚举类
TimeUnit是 java.util.concurrent 中的一个枚举类.一般让线程进行睡眠时使用: TimeUnit.MILLISECONDS.sleep(100); 比如上面一行代码表示让当 ...