Java程序的组织形式:纯粹的面向对象的程序设计语言,因此Java程序必须以类的形式存在,类是Java程序的最小程序单位,Java程序不容许可执行语句、方法等成分独立存在,全部的程序部分都必须放在类定义里。java
要使用Java命令来解释某一个字节码文件,这个文件内必须有一个main方法,且main方法定义的写法固定为:程序员
public static void main(String[] args)shell
对于一个大型的Java程序而言,每每只须要一个main入口,其余类都是被main方法直接或间接调用的。数据库
Java源文件的扩展名必须是.java 编程
若是Java源文件里定义了一个public类,则该源文件的主文件名必须与该public 类名相同。因此一个Java源文件内最多只能定义一个public类。小程序
ps:一个Java源文件最好只定义一个类,不一样的类使用不一样的源文件定义,而且Java源文件命名采用类名。函数
而后最好把文件夹选项设置成以下:工具
一些初学者容易犯的错误:性能
①CLASSPATH环境变量:学习
在JDK1.5以上的版本中彻底能够不用设置,若是设置了就必定要设置正确,由于设置了CLASSPATH 之后,Java解释器就只会在CLASSPATH所指定的路径中寻找Java类。而且
找不到类定义的错误通常就是因为CLASSPATH环境变量设置不正确形成的。
若是指定了CLASSPATH,必定要加“.”,来让Java解释器强行在当前路径下搜索Java类
②大小写问题:
Java语言严格区分大小写。Java程序中的关键字所有是小写,无须大写任何字母
③路径里包含空格的问题:
在安装JDK以及相关Java的程序,工具时不要安装在包含空格的路径下,常见“Program Files"就包含
④main方法的问题,写法必定要正确,且用java命令直接运行的Java类必定要有main方法(用public static 修饰)
Java程序中输出的两种方式:System.out.print()和System.out.println(),后者在输出结束后会换行。
JDK9的一大改进就是提供了jashell工具,是一个REPL工具,该工具是一个交互式的命令行界面,可用于执行Java语言的变量声明、语句和表达式,而且能够当即看到执行结果。能够更方便测试代码。新增的jshell位于JDK安装目录的bin路径下。
显式进行垃圾回收是比较困难的一件事。Java程序的内存分配和回收都是由JRE在后胎自动进行的。JRE会负责回收那些再也不使用的内存(垃圾回收 GC),一般由JRE提供一个后台线程来进行检测和控制,通常在CPU空闲或内存不足时自动进行垃圾回收。
垃圾回收不只会释放没用的对象,还能够清除内存记录碎片。
可是垃圾回收影响性能。
内存泄漏:若是一些分配出去的内存不及时回收,就会引发系统运行速度降低,甚至致使程序瘫痪。
垃圾回收的特色:
①工做目标是回收无用对象的内存空间,垃圾回收器只能回收内存资源,对其余物理资源,如数据库链接,磁盘I/O等资源则无能为力。
②将引用变量设置为null,能够暗示垃圾回收器能够回收该对象。
③垃圾回收发生的不可预知性,虽然程序员可使用调用Runtime对象的gc()和System.gc()等方法来建议系统进行垃圾回收,但这种调用仅仅是建议,依然不能精确控制垃圾回收机制的执行。
④垃圾回收的精确性:可以精确的标记活着的对象。可以精确地定位对象之间的引用关系。
编写Java程序时的一个基本原则:对于再也不须要的对象,不要引用他们,当系统可用内存愈来愈少时,垃圾回收执行的频率就会愈来愈高,从而致使系统的性能降低。
初学者不要使用IDE工具来学习Java编程。
只有当知道IDE工具里单击每个菜单,单击每个按钮,IDE工具在底层作的每个细节时,才可使用IDE工具。
练习:
搭建本身的Java开发环境
编写Java语言的HelloWorld
主流开发方法:①结构化开发方法(面向功能(数据流)的程序设计方法)②面向对象开发方法(能够提供更好的可重用性、可扩展性、可维护性)
结构化程序设计:SA SD SP,其最小的程序单元是函数,每一个函数都负责完成一个功能。程序的入口为主函数
程序设计三种基本结构:顺序结构+选择结构+循环结构