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

包裹类型

基础类型 包裹类型
boolean Boolean
char Character
int Integer

运算符

  • 当需要让一个类或对象做事情的时候,用.运算符
  • 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 );

猜你喜欢

转载自blog.csdn.net/m0_71290816/article/details/127601900