JAVA2核心技术卷1 学习笔记3 对象和类

时间:2023-02-24 12:10:05
 JAVA2核心技术卷1 对象和类   1.         面向对象程序设计概述 1)        概述 2)        词汇                          i.              封装:将数据和行为结合到一个包中,并对对象的使用者隐藏了数据的实现方式。                        ii.              方法:操纵数据的过程                       iii.              封装:就是产生一个“黑盒” 3)        对象                          i.              对象的行为状态和标识 4)        类之间的关系                          i.              依赖                        ii.              聚合(相当与包含着 has a)                       iii.              继承(相当与他的子项目 is a) 5)        OOP与传统技术的对比 2.         使用现有的类  1)        对象和对象变量                         i.              使用对象之前必须先要构造对象,构造器的名字和类的名字相同,要想构造一个对象,需要在构造器上加上NEW操作符号。一个对象变量并没有实际包含一个对象,而仅仅引用一个对象。                        ii.              Date deadline=new Date();有两个部分。(1)表达式new Date() 构造了一个date类型的对象 (2)并且他的值是对新创建对象的引用,这个引用被存储在变量deadline中。2)        JAVA 库中的GregorianCalendar类                         i.              GregorianCalendar类比DATE 类所包含的方法要多很多,特别是很有用的构造器。                       ii.              New GregroianCalendar();                      iii.              New GregroianCalendar(1999,11,31)可以通过年月日来构造一个表示某个特定时期午夜的日历对象。有些怪异的是月份是从0开始的。3)        更改器方法和访问器方法                         i.              从某个特定的GregorianCalendar对象内部的日期中获得当前的月日年1.         GregorianCalendar now=new GregorianClaendar();2.         Int month=new.get(Calendar.Month);3.         Int weekday=new.get(Calendar.DAY_OF_WEEK);                       ii.              对实例域作出的修改的方法被称为更改器方法,如set ,add 1.         deadline.set(Calendar.YEAR,2001);2.         deadline.add(Calendar.MONTH,3);                      iii.              仅仅访问实例域而不加修改的方法称为访问器方法 如上面的get2.         用户自定义的类1)        一个employee类class ClassName{constuctor1//构造器method1//方法field1//域}                         i.              简单的employeeclass Employee{//构造器public Employee(String n,double s,int year,int month,int day){ }} 2)        多个原文件的使用 3)        解析Employee类 4)        从构造器开始 5)        隐式参数和显式参数 6)        封装的优点 7)        基于类的访问权限 8)        私有方法 9)        final实例域 4.         静态域和静态方法 1)        静态域 2)        常量 3)        静态方法 4)        Factory 方法 5)        Main方法 5.         方法参数 6.         对象构造 1)        重载 2)        默认域初始化 3)        默认构造器 4)        显示初始化 5)        参数名 6)        调用另外一个构造器 7)        初始化块 8)        对象析构与 finalize方法 7.         1)        类的导入 2)        静态导入 3)        将类放入包中 4)        虚拟机如何定位类 8.         文档注释 1)        注释的插入 2)        类注释 3)        方法注释 4)        域注释 5)        通用注释 6)        包和概述注释 7)        注释的抽取 9.         类设计技巧 1)        一定将数据设计为私有 2)        一定要将数据初始化 3)        不要在类中使用过多的基本数据类型 4)        不是所有的域都需要独立的域访问器和域更改器 5)        使用标准格式进行类的定义 6)        将职责过多的类进行分解 7)        类名和方法名要能够体现他们的责任 相关的代码: JAVA2核心技术卷1 学习笔记3 对象和类public class Xunhuan
JAVA2核心技术卷1 学习笔记3 对象和类JAVA2核心技术卷1 学习笔记3 对象和类
{
JAVA2核心技术卷1 学习笔记3 对象和类    
public static void main(String[] args)
JAVA2核心技术卷1 学习笔记3 对象和类JAVA2核心技术卷1 学习笔记3 对象和类    
{
JAVA2核心技术卷1 学习笔记3 对象和类        
for(double x=0;x!=10;x+=0.1) //注意这样是制造一个死循环的
JAVA2核心技术卷1 学习笔记3 对象和类JAVA2核心技术卷1 学习笔记3 对象和类        
{
JAVA2核心技术卷1 学习笔记3 对象和类            System.out.println(
" my test"+x);
JAVA2核心技术卷1 学习笔记3 对象和类        }

JAVA2核心技术卷1 学习笔记3 对象和类    }

JAVA2核心技术卷1 学习笔记3 对象和类}

JAVA2核心技术卷1 学习笔记3 对象和类

 

JAVA2核心技术卷1 学习笔记3 对象和类import java.util.*;
JAVA2核心技术卷1 学习笔记3 对象和类
public class InputTest
JAVA2核心技术卷1 学习笔记3 对象和类JAVA2核心技术卷1 学习笔记3 对象和类
{
JAVA2核心技术卷1 学习笔记3 对象和类    
public static void main(String[] args)
JAVA2核心技术卷1 学习笔记3 对象和类JAVA2核心技术卷1 学习笔记3 对象和类    
{
JAVA2核心技术卷1 学习笔记3 对象和类        Scanner in
=new Scanner(System.in);
JAVA2核心技术卷1 学习笔记3 对象和类        
// get first input
JAVA2核心技术卷1 学习笔记3 对象和类
        System.out.print("what is your name?");
JAVA2核心技术卷1 学习笔记3 对象和类        String name
=in.nextLine();
JAVA2核心技术卷1 学习笔记3 对象和类
JAVA2核心技术卷1 学习笔记3 对象和类        
//get Second input
JAVA2核心技术卷1 学习笔记3 对象和类
        System.out.print("How old ar you?");
JAVA2核心技术卷1 学习笔记3 对象和类        
int age= in.nextInt();
JAVA2核心技术卷1 学习笔记3 对象和类        
//display output on console
JAVA2核心技术卷1 学习笔记3 对象和类
        System.out.println("Hello,"+name+".Next year, you'll be "+(age+1));
JAVA2核心技术卷1 学习笔记3 对象和类        System.out.printf(
"%,.2f",100000.0/3.0);
JAVA2核心技术卷1 学习笔记3 对象和类    }

JAVA2核心技术卷1 学习笔记3 对象和类}

JAVA2核心技术卷1 学习笔记3 对象和类

 

JAVA2核心技术卷1 学习笔记3 对象和类import java.util.*;
JAVA2核心技术卷1 学习笔记3 对象和类
public class Mydate
JAVA2核心技术卷1 学习笔记3 对象和类JAVA2核心技术卷1 学习笔记3 对象和类
{
JAVA2核心技术卷1 学习笔记3 对象和类    
public static void main(String[] args)
JAVA2核心技术卷1 学习笔记3 对象和类JAVA2核心技术卷1 学习笔记3 对象和类    
{
JAVA2核心技术卷1 学习笔记3 对象和类    Date mydate
=new Date();
JAVA2核心技术卷1 学习笔记3 对象和类    System.out.println(mydate);    
JAVA2核心技术卷1 学习笔记3 对象和类    }

JAVA2核心技术卷1 学习笔记3 对象和类}

JAVA2核心技术卷1 学习笔记3 对象和类

 

 

JAVA2核心技术卷1 学习笔记3 对象和类public class Message
JAVA2核心技术卷1 学习笔记3 对象和类JAVA2核心技术卷1 学习笔记3 对象和类
{
JAVA2核心技术卷1 学习笔记3 对象和类    
public static void main(String[] args)
JAVA2核心技术卷1 学习笔记3 对象和类JAVA2核心技术卷1 学习笔记3 对象和类    
{
JAVA2核心技术卷1 学习笔记3 对象和类        
if(args[0].equals("-h"))
JAVA2核心技术卷1 学习笔记3 对象和类            System.out.print(
"Hello,");
JAVA2核心技术卷1 学习笔记3 对象和类        
else if(args[0].equals("-g"))
JAVA2核心技术卷1 学习笔记3 对象和类            System.out.println(
"Goodbye,");
JAVA2核心技术卷1 学习笔记3 对象和类    
for(int i=1;i<args.length;i++)
JAVA2核心技术卷1 学习笔记3 对象和类        System.out.print(
""+args[i]);
JAVA2核心技术卷1 学习笔记3 对象和类    System.out.println(
"!");
JAVA2核心技术卷1 学习笔记3 对象和类    }

JAVA2核心技术卷1 学习笔记3 对象和类}

JAVA2核心技术卷1 学习笔记3 对象和类

 

JAVA2核心技术卷1 学习笔记3 对象和类import java.util.*;
JAVA2核心技术卷1 学习笔记3 对象和类
public class Retirement
JAVA2核心技术卷1 学习笔记3 对象和类JAVA2核心技术卷1 学习笔记3 对象和类
{
JAVA2核心技术卷1 学习笔记3 对象和类    
public static void main(String[] args)
JAVA2核心技术卷1 学习笔记3 对象和类JAVA2核心技术卷1 学习笔记3 对象和类    
{
JAVA2核心技术卷1 学习笔记3 对象和类        Scanner in 
= new Scanner(System.in);
JAVA2核心技术卷1 学习笔记3 对象和类        System.out.print(
"How much money do you need to retire?");
JAVA2核心技术卷1 学习笔记3 对象和类        
double goal=in.nextDouble();
JAVA2核心技术卷1 学习笔记3 对象和类        System.out.print(
"How much money do you in every year?");
JAVA2核心技术卷1 学习笔记3 对象和类        
double payment=in.nextDouble();
JAVA2核心技术卷1 学习笔记3 对象和类
JAVA2核心技术卷1 学习笔记3 对象和类        System.out.print(
"interest rate in %");
JAVA2核心技术卷1 学习笔记3 对象和类        
double interestRate=in.nextDouble();
JAVA2核心技术卷1 学习笔记3 对象和类
JAVA2核心技术卷1 学习笔记3 对象和类        
double balance=0;
JAVA2核心技术卷1 学习笔记3 对象和类        
int years=0;
JAVA2核心技术卷1 学习笔记3 对象和类
JAVA2核心技术卷1 学习笔记3 对象和类        
while(years<=33)
JAVA2核心技术卷1 学习笔记3 对象和类JAVA2核心技术卷1 学习笔记3 对象和类        
{
JAVA2核心技术卷1 学习笔记3 对象和类            balance
=balance+payment;
JAVA2核心技术卷1 学习笔记3 对象和类            
double interest=(1+interestRate/100);
JAVA2核心技术卷1 学习笔记3 对象和类            balance
=balance*interest;
JAVA2核心技术卷1 学习笔记3 对象和类            
if(balance>=goal) break;
JAVA2核心技术卷1 学习笔记3 对象和类            years
++;
JAVA2核心技术卷1 学习笔记3 对象和类        }

JAVA2核心技术卷1 学习笔记3 对象和类        System.out.println(
"You can retire in"+years+"years");
JAVA2核心技术卷1 学习笔记3 对象和类    }

JAVA2核心技术卷1 学习笔记3 对象和类}

JAVA2核心技术卷1 学习笔记3 对象和类