跟着刚哥梳理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 ...
随机推荐
- MongoDB的安装及恢复
在http://www.mongodb.org/display/DOCS/Downloads 下载对应版本 mongodb 安装数据库 解压文档,复制到c盘,改名为mongodb 新建文件夹c:/da ...
- 学习Java 以及对几大基本排序算法(对算法笔记书的研究)的一些学习总结(Java对算法的实现持续更新中)
Java排序一,冒泡排序! 刚刚开始学习Java,但是比较有兴趣研究算法.最近看了一本算法笔记,刚开始只是打算随便看看,但是发现这本书非常不错,尤其是对排序算法,以及哈希函数的一些解释,让我非常的感兴 ...
- 卷积神经网络(CNN)前向传播算法
在卷积神经网络(CNN)模型结构中,我们对CNN的模型结构做了总结,这里我们就在CNN的模型基础上,看看CNN的前向传播算法是什么样子的.重点会和传统的DNN比较讨论. 1. 回顾CNN的结构 在上一 ...
- Scalatra--Introduction And Quick start
Introduction Scalatra是一款轻易级Scala web框架,通过Scalatra可以很轻易创建web Application,由Linkedln开源并遵循了Ruby Web框架的Si ...
- Java基础(下)(JVM、API)
Java基础(下) 第三部分:Java源程序的编辑 我们知道,计算机是不能直接理解源代码中的高级语言,只能直接理解机器语言,所以必须要把高级语言翻译成机器语言,计算机才能执行高级语言编写的程序. 翻译 ...
- JavaWeb之Servlet总结
今天上班居然迟到了,昨天失眠了,看完吐槽大会实在不知道做些什么,刚好朋友给我发了两个JavaWeb的练习项目,自己就又研究了下,三四点才睡,可能周日白天睡的太多了,早上醒来已经九点多了,立马刷牙洗脸头 ...
- Yii2 Pjax 与 ActionForm ,不刷新提交数据
<?php yii\widgets\Pjax::begin(['id'=>'phoneDetail']);?> <?php $form = ActiveForm::begin( ...
- Spring Data JPA,一种动态条件查询的写法
我们在使用SpringData JPA框架时,进行条件查询,如果是固定条件的查询,我们可以使用符合框架规则的自定义方法以及@Query注解实现. 如果是查询条件是动态的,框架也提供了查询接口. Jpa ...
- TCP协议设计原理
TCP协议设计原理 最近去了解TCP协议,发现这是一个特别值得深思的协议.在本篇博客中,不会长篇大论的给大家介绍TCP协议特点.包头格式以及TCP的连接和断开等基本原理,而是会带大家深入理解为什么要这 ...
- C++基础——C面向过程与C++面向对象编程01_圆面积求解
#include "iostream";//包含C++的头文件using namespace std;//使用命名空间std标准的命名空间(在这个命名空间中定义了很多标准定义)vo ...