疯狂java


您现在的位置: 疯狂软件 >> 新闻资讯 >> 正文

Java面向对象编程学习笔记


 

   

  第一个Java应用

  一、创建Java源程序

  1、Doll.java

  public class Doll {

  /**福娃的名字**/

  private String name;

  /**构造方法**/

  public Doll(String name){

  this.name=name;

  }

  /**说话**/

  public void speak(){

  System.out.println("My name is "+name);

  }

  }

  2、AppMain.java

  public class AppMain {

  public static void main(String[] args) {

  // TODO Auto-generated method stub

  Doll FuWa=new Doll("fuwa");

  Doll BeiBei=new Doll("beibei");

  FuWa.speak();

  BeiBei.speak();

  }

  }

  3、源程序文件结构:一个Java应用包含一个或多个Java源程序,每个源程序文件可以包含多个类或接口的定义,但是最多只能有一个类或接口是修饰为public的,而且该源文件也必须以这个public类型的类的名字命名。

  4、包的作用:在本例中没有使用包,在一个Java源文件中最多只能有一个package语句,而且package语句必须放在第一行,把类放到特定的包中。包通常采用小写,其命名规则实际上采用了Internet上URL命名规范的反转形式,如com.ts.game.wow包可以看出为ts公司game项目中的wow包。包主要有三个作用:(1)能够区分名字相同的类,不同的包中的类的名字是可以相同的。(2)有助于进行访问控制(通过访问控制修饰符)。(3)有助于划分和组织Java应用中的不同类,如客户端和服务器端的类可以分别放置于不同的包中。

  JDK提供的Java基本包,主要包括:(1)java.lang:包括线程类、异常类、系统类、整数类和字符串类等。一般即便不通过import语句,该包也默认被引入。(2)java.awt:抽象窗口工具箱,包含了用于构建GUI界面的类和绘图类。(3)java.io:输入/输出包,包含各种输入流类和输出流类。(4)java.util:提供包括日期类和集合类在内的实用工具类包。(5)java.net:支持TCP/IP网络协议,包括Socket类及URL相关类。

  5、方法的声明:Java中的方法都属于某一个类,因此方法的声明必须位于类的定义中。

  返回值类型 方法名 (参数列表){

  方法主体

  }

  6、程序入口main方法的声明:每一个Java应用程序都是从main()方法开始运行的,作为程序入口的main()方法必须同时符合一下4个条件:(1)访问限制:public;(2)静态方法:static;(3)参数限制:String[] args;(4)返回类型:void。

  7、命名规范:(1)类名和接口名:首字母大写,如果多个单词组成则每个单词首字母均大写,如FirstTool。(2)方法名和变量名:首字母小写,如果多个单词则除了第一个单词外的其余单词首字母大写,如myFirstTool。(3)包名:全小写。(4)常量名:全大写,如果多个单词则以下划线“_”隔开。

  二、JDK

  JDK为Java Development Kit(Java开发工具包)的缩写,它为Java应用程序提供基本的开发和运行环境。J2SE(Java 2 Standard Edition)指JDK1.2以上的版本。JDK主要包括:(1)Java虚拟机:负责解析和执行Java程序,虚拟机可以运行在各种操作系统上;(2)JDK类库:提供了最基础的各种Java类,包括前述的langioawt et等;(3)开发工具:javac.exe(Java Compiler编译器)、java.exe(运行工具)、javadoc.exe和jar.exe等。

  三、Java虚拟机的运行时数据区

  Java虚拟机(Java Virtual Machine,JVM)是由JDK提供的,其任务为执行Java程序(即实现java.exe功能)。JVM封装了底层操作系统的差异,不管在哪个平台,都按以下步骤来运行程序:(1)把.class文件中的二进制数据加载到内存中;(2)对类的二进制数据进行验证;(3)解析并执行指令。

  JVM提供了程序运行时环境,运行时环境最重要的资源即是运行时数据区,它是操作系统为JVM进程分配的内存区域,JVM管辖这片区域,JVM把该内存区域又分为:堆区(存放对象)、方法区(类的静态变量和方法信息)、Java栈区。