跟着刚哥梳理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 ...
随机推荐
- Github创建分支
一.clone Repository clone Github 上的Repository,如下: git clone git@github.com:FBing/design-patterns.git ...
- 每天一个Linux命令(18)--locate命令
locate让使用者可以很快速的搜寻档案系统内是否有指定的档案.器方法是先建立一个包括系统内所有档案名称及路径的数据库,之后当寻找时就需查询这个数据库,而不必实际深入档案系统之中了.在一般的 ditr ...
- 第六篇 项目疑问 ------- BaseService<T> where T : class, new() 含义
public abstract class BaseService<T> where T : class, new() { //当前仓储 //DbSession的存放 //为了职责单一的原 ...
- 点击Robot Framework的桌面快捷图标后,没有反应(没有打开应用程序)
http://www.cnblogs.com/zhengyihan1216/p/6397478.html 这篇文章中介绍了如何安装Robot Framework以及如何在桌面上创建快捷方式. 但是有 ...
- C++ 11和C++98相比有哪些新特性
此文是如下博文的翻译: https://herbsutter.com/elements-of-modern-c-style/ C++11标准提供了许多有用的新特性.这篇文章特别针对使C++11和C++ ...
- 信号处理——傅里叶变换(FT-DTFT-DFT)
作者:桂. 时间:2017-01-17 23:41:13 链接:http://www.cnblogs.com/xingshansi/articles/6294111.html 声明:转载请注明出处, ...
- ajax 实现页面加载和内容的删除
ajax最大的好处就在于加载和删除的时候不会跳转页面,现在的网页大多都会选择用ajax来写,相比嵌入PHP代码来说减少了代码量,同时加载页面也会比较快, 下面是用ajax以数据库fruit表为例写的 ...
- 数据库-增删改查操作SQL实现
一.数据插入-Insert 1. 插入单条记录 insert into 表名(字段名,字段名,字段名) //当插入所有字段时,字段名可以省略 values('值1','值2','值3'); 2. 插入 ...
- CoreGraphics--画线/圆/矩形
- (void)drawRect:(CGRect)rect { // Drawing code NSLog(@"drawRect自动调用"); //画图步骤 //获取上下文(/画笔 ...
- git remote log error
使用git pull的时候收到以下信息: error: there are still refs under 'refs/remotes/origin/xxxx'From 10.1.25.57:yyy ...