Time1是公共类,可以被其他包所访问
下面的这个,未导入包,未建立文件夹
javac -d . Time.java -d可以自动创建文件夹 . 指当前目录
类不用public不能访问,public类中未public的变量也不能直接访问
但同一个包内可以访问
方法如果private包内可见
this指当前调用该方法的对象
默认有一个隐含参数this,用于如果方法内有局部变量与成员变量同名,this的是成员变量
3.4成员访问控制
同一个目录下的包可以互相访问
3.5 成员方法
个数不同
3.6构造函数
3.6构造函数的使用
构造函数最好不要写类型(void,int,string)继承时可能出错
这里的this指当前类的其他构造函数
作业:
定义一个Dog类,有名字、颜色、年龄等属性,定义构造方法用来初始化类的这些属性,定义方法输出Dog的信息。编写应用程序使用Dog。
package com.example;
import java.util.Scanner;
public class javahello_2 {
public static void main(String[] args) {
Scanner reader = new Scanner(System.in);
String name,color,age;
name=reader.next();
color=reader.next();
age=reader.next();
Dog dog1=new Dog(name,color,age);
System.out.println("有输入的");
dog1.Dogout();
System.out.println("输入缺省的");
Dog dog2=new Dog();
dog2.Dogout();
}
}
class Dog{
String name,color,age;
public Dog(){
name="undifine";
color="undifine";
age="undifine";
}
public Dog(String name,String color,String age){
this.name=name;
this.color=color;
this.age=age;
}
public void Dogout(){
System.out.println("name:"+name+";color:"+color+";age:"+age);
}
}
定义一个Course类,该类有这样一些成员变量:课程号、课程名称、授课教师、课程状态(必修或者选修),所有的成员变量都是私有的,并且有用于访问它们的公共set/get方法。最后为Course类编写一个测试程序。
//这个编辑器真第秀
//setname直接回车就写好函数
package com.example;
import sun.rmi.runtime.NewThreadAction;
import javax.sound.midi.Soundbank;
import java.util.Scanner;
import java.util.Set;
public class javahello_2 {
public static void main(String[] args) {
Course course= new Course();
//testset
course.setName("name");
course.setNumber(1);
course.setStatus("必修");
course.setTeacher("teacher");
//testout
System.out.println(course.getName());
System.out.println(course.getNumber());
System.out.println(course.getStatus());
System.out.println(course.getTeacher());
}
}
class Course{
//def
private int number;
private String name,teacher,status;
//set
public void setNumber(int number) {
this.number = number;
}
public void setName(String name) {
this.name = name;
}
public void setTeacher(String teacher) {
this.teacher = teacher;
}
public void setStatus(String status) {
this.status = status;
}
//get
public int getNumber() {
return number;
}
public String getName() {
return name;
}
public String getTeacher() {
return teacher;
}
public String getStatus() {
return status;
}
}