JAVA程序设计(一)

JAVA程序设计
面向对象
类(class)
类:具有共同属性和行为的对象集合

  • 属性:变量(字段 field)
  • 行为:函数(方法 method)
class Person{
	int age;
	String name;
	void sayHello(){...}
	}

类与对象的关系

  • 类是对象的抽象(模板)
  • 对象是类的实例

注:类和对象有时都统称“对象”,为了明确起见,后者称为“对象实例”。

面向对象的三大特征:

1. 封装性

模块化:将属性和行为封装在类中,程序定义很多类。
信息隐蔽:将类的细节部分隐藏起来,用户只通过受保护的接口访问某个类。

class Person{
	private int age;
	public int getAge(){ return age;}
	public void setAge(int a){ age=a;}
	String name;
	void sayHello(){...}

2. 继承性

父类和子类之间共享数据和方法


//父类
class Person{
	int age;
	String name;
	void sayHello(){...}
}

//子类
class Student extends Person{
	String school;
	double scorel
	void meetTeacher(){...}
}

继承的好处

  • 更好地进行抽象与分类
  • 增强代码的重用率
  • 提高可维护性

3. 多态性

  • 不同的对象收到同一个消息(调用方法)可产生完全不同的效果
  • 实现的细节则由接收对象自行决定

例子如下:
foo(Person p){ p.sayHello();}
foo(new Student());
foo(new Teacher());

面向对象设计思想的要点

  • 认为客观世界由各种对象组成
  • 程序的分析和设计都围绕着
    • 有哪些对象类
    • 每个类有哪些有哪些属性、哪些方法
    • 类之间的关系(继承、关联等)
    • 对象之间发送消息(调用方法)

Application和Applet程序

  • 结构和运行环境不同
  • 前者是独立的程序,需要执行器(调用虚拟机)来运行
  • 后者是潜在HTML网页中的非独立的程序
    • 由专门的appleViewer来运行
    • 或者由Web浏览器(调用JAVA虚拟机)来运行

Application程序

HelloWorld.java

public class HelloWorldApp {
	public static void main (String agrs[]){
		System.out.println("Hello World!");
	}
}

要点:

  • class是主体
  • public类名与文件同名
  • main()的写法是固定的
  • System.out.print 及 println 及 printf

JAVA程序的基本构成
HelloDate.java

  • package 语句(0或1句)

  • import 语句(0或1句)

    • 导入其他类的类库
  • 类定义——class(1个或多个)

    • 一个文件只能有一个public类(与文件同名)
  • 类=类头+类体

  • 类成员 = 字段(field)+方法(method)

    • 字段(field,属性,变量)
    • 方法(method,函数)
  • 方法 = 方法头 + 方法体

唐大仕老师的听不懂。。。转站翁恺老师
零基础学Java语言-翁恺


本课程使用eclipse IDE。

第一个程序:HelloWorld

package hello;

import java.util.Scanner;

public class Hello {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		System.out.println("Hello World!");
	}

}
  • 使用ALT+/ 可让eclipse自动联想补全代码。
  • System.out.println("");表示换行输出
  • 一句语句使用;表示结束

读输入

Scanner in = new Scanner(System.in);
System.out.println(in.nextLine());

  • 任何需要读用户输入的程序都需要这行

变量

变量定义

  • 一般形式:<类型名称><变量名称>;
  • 例:
    • int price;
    • int amount;
    • int price, amount;

变量名字

定义:用来标识类名、变量名、方法名、类型名、数组名、文件名的有效字符序列。

判断两个浮点数是否相等

double a = 1.0;
double b = 0.1+0.1+0.1+0.1+0.1+0.1+0.1+0.1+0.1+0.1;
System.out.println(a==b);

Math.abs(f1 - f2) < 0.00001

包裹类型

基础类型包裹类型
booleanBoolean
charCharacter
intInteger

运算符

  • 当需要让一个类或对象做事情的时候,用.运算符
  • a.length
  • Integer.MAX_VALUE
  • 点左边是一个对象,右边是提供的服务。

Character类

  • static boolean isDigit(char ch)
    判断这个字符是不是数字
  • static boolean isLetter(char ch)
    判断这个字符是不是字母
  • static boolean isLowerCase(char ch)
    判断这个字符是不是小写字母
  • static boolean isUpperCase(char ch)
    判断这个字符是不是大写字母

Math类

  • Math.abs();
  • Math.round();
  • Math.random();
  • Math.pow();

字符串

new = 创建
String s= new String(“a string”);

  • 创建了一个String的对象
  • 用“a string”初始化这个对象
  • 创建管理这个对象的变量s
  • 让s管理这个对象
System.out.print("Please input a char:");
char c = 0try{
	c = (char) System.in.read()
}catch(IOException e){}
System.out.println("You have entered" +c);

AppLineInOut.java

try{
	BufferReader in = new BufferedReader(
		new InputStreamReader( System.in));
	s = in.readLine();
}catch(IOException e){}

AppNumInOut.java

BufferedReader in = new BufferredReader(
	new InputStreamReader( System.in));
System.out.print("Please input an int: ");
s = in.readLine();
n = Integer.parseInt( s );
  • 输入输出数字
  • 用Integer.parseInt( s );
  • 用Double.parseDouble( s );
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值