0
点赞
收藏
分享

微信扫一扫

第三周-Java基础

RockYoungTalk 2022-03-12 阅读 83

2022-03-07

Student类

package day0307;
/**
 * 学生类
 * 一个基本的学生类
 * 类的语法 空的类:修饰符 class 类名{}
 * 属性的语法:修饰符 数据类型(类) 属性名;
 * 创建对象的语法:类名 自定义的对象名 = new 类名();
 * @author Katrina
 */
public class Student {

	//属性的语法:修饰符 数据类型(类) 属性名;
	public String name; //姓名
	public int age; //年龄
	public String sex; //性别
	
	public static void main(String[] args) {
		//类名 自定义的对象名(变量) new 类名(); String str = new String("");
		Student student = new Student(); //新建一个学生对象student,开辟空间存放student对象,student指向内存空间
		student.name = "李阳"; //对对象的属性进行赋值
		student.age = 18; 
		student.sex = "男";
		System.out.println("学生的名字叫" + student.name);
		System.out.println("学生的年龄是" + student.age);
		System.out.println("学生的性别是" + student.sex);
		student.eat();
		student.sleep();
		student.lesson();
	}
	
	/*
	 * 吃饭
	 */
	public void eat() {
		System.out.println("吃泡面");
	}
	
	/*
	 * 睡觉
	 */
	public void sleep() {
		System.out.println("睡10个小时");
	}
	
	/*
	 * 上课
	 */
	public void lesson() {
		System.out.println("上技术课和职场课");
	}
	
}

Teacher类

package day0307;
/**
 * 教师类
 * @author Katrina
 */
public class Teacher {

	String name;
	int age;
	String sex;
	String lesson;
	
	public static void main(String[] args) {
		//一般情况下,可以在类的方法中引用其他类创建对象。前提:被引用的类符合引用条件
//		Student student = new Student();
//		student.name = "小明";
//		System.out.println("学生的名字是" + student.name);
		
		Teacher teacher = new Teacher(); //新建一个教师对象 teacher
//		teacher.name = "孙传波";
//		System.out.println("老师的姓名是" + teacher.name);
//		teacher.age = 30;
//		System.out.println("老师的年龄是" + teacher.age);
//		teacher.sex = "男";
//		System.out.println("老师的性别是" + teacher.sex);
//		teacher.lesson = "Java";
//		System.out.println("老师授课内容是" + teacher.lesson);
//		System.out.println(teacher.name + "," + teacher.age + "," + teacher.sex + "," + teacher.lesson);
		
//		teacher.setAge(10);
		int num = 25;
		//对象.方法 通过传值,将实参num传递给对象teacher所引用的方法setAge的形参,在方法内完成对对象属性的赋值
//		teacher.setAge(num);  //对象.方法
//		System.out.println(teacher.age); //25
		System.out.println("xx" + teacher.name + "xx"); 
		teacher.Teach();
	}
	
	/*
	 * 设置年龄的方法
	 */
	public void setAge(int num) {
		age = num;
	}
	
	/*
	 * 上课的方法
	 */
	public void Teach() {
		System.out.println("教师上课");
	}
	
}

Cat类

package day0307;

public class Cat {

	String color = "黑色";
	int age = 3;
	String name = "DaMao";
	String sex = "女";
	
	public static void main(String[] args) {
		Cat cat = new Cat();
		System.out.println("小猫的名字叫" + cat.name);
		System.out.println("小猫的年龄是" + cat.age);
		System.out.println("小猫的颜色是" + cat.color); 
		System.out.println("小猫的性别是" + cat.sex);
		cat.eat();
		cat.sleep();
	}
	
	/*
	 * 吃饭
	 */
	public void eat() {
		System.out.println("吃鱼");
	}
	
	
	/*
	 * 睡觉
	 */
	public void sleep() {
		System.out.println("睡觉");
	}
	
}

2022-03-08

Student类

package day0308;

/**
 * 基本类
 * 1.属性:是这群对象抽象出来的类共有的特性、特征
 * 属性语法:修饰符 数据类型 属性名称;
 * 数据类型可以是基本数据类型(8种)、引用数据类型(String、数组、其他类)
 * 2.方法语法:修饰符 返回值类型 方法名 (参数列表) {方法体}
 * 返回值类型:无返回、基本数据类型、引用数据类型
 * 参数列表:数据类型 参数名
 * 参数可以有,也可以没有。根据方法是否需要接收一定的条件来确定
 * 3.新建对象:类名 对象名 = new 类名();
 * 规则:类名必须是经过声明的类:对象名可以自定义
 * @author Katrina
 */
public class Student {

	public String name; //属性-姓名
	public int age;
	public String sex;
	
	//无参方法
	public void study() {
		System.out.println("学生学习");
	}
	
	//有参方法
	public int older(int num) {
		System.out.println("年龄是:" + num);
		return ++num;
	}
	
	public static void main(String[] args) {
		/**
		 * 1.Student student; 栈里面开辟空间,名叫student
		 * 2.new Student(); 堆里面开辟空间,存放一个student类的对象
		 * 2.=赋值 将student指向堆里面的内存空间
		 */
		Student student = new Student(); //新建Student类的对象student
		student.age = 20; //对象属性赋值 对象.属性 (. 的)
		System.out.println("学生的年龄是:" + student.age);
		int newAge = student.older(student.age);
		System.out.println("长大一岁后是:" + newAge);
	}
	
}

Dog类

package day0308;

import java.util.Scanner;

public class Dog {

	//姓名
	String name;
	//性别
	String sex;
	//狗龄
	int age;
	
	/*
	 * 改名字
	 */
	public void changeName(String name) {
		System.out.println("改名字了,新名字叫" + name);
	}
	
	/*
	 * 吃
	 */
	public void eat() {
		System.out.println("小狗吃骨头");
	}
	
	/*
	 * 叫
	 */
	public void bark(String voice) {
		System.out.println("小狗的叫声是" + voice);
	}
	
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		String voice = sc.nextLine();
		Dog dog = new Dog();
//		dog.changeName("小明");
//		dog.changeName("黄晓明");
//		dog.changeName("baby");
//		dog.eat();
		dog.bark(voice);
	}
	
}

显示包列表

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

导包

Exercise类
package com.shaungtixi; //声明类属于那个包

//import java.util.Scanner; //导入java.util包里面的Scanner类
//import java.util.*; //通过导入所有util,来导入Scanner包
import day0308.Dog; //导包

/**
 * 导包快捷键
 * alt + / 或者 Ctrl + Shift + O
 * @author Katrina
 *
 */
public class Exercise {

	public static void main(String[] args) {
		Dog dog = new Dog();
//		Scanner scan = new Scanner(System.in); //先导包,后直接用
//		java.util.Scanner scan = new java.util.Scanner(System.in);
//		java.util.Scanner scan1 = new java.util.Scanner(System.in);
		double pi = Math.PI; //java.lang.*基础包不用导包
		System.out.println(pi); //3.141592653589793
	}
	
}

访问控制修饰符

day03081包

Teacher类

package day03081;

class Teacher {

	/*四种属性*/
	public String name; //public 公有属性,可以在任意地方使用
	protected int age; //protected 受保护的属性,跨包不能使用
	String teach; //默认修饰的属性 跨包不能使用
	private String lesson; //private私有属性,只能在本类中使用
	
	//同一个类能不能访问
	//结果->都能够正常访问到
	public static void main(String[] args) {
		Teacher teacher = new Teacher();
		teacher.name = "张三";
		teacher.age = 30;
		teacher.teach = "技术";
		teacher.lesson = "Java";
	}
	
}

Teacher2类

package day03081;

public class Teacher2 {

	/*四种属性*/
	public String name;
	protected int age;
	String teach;
	private String lesson;
	
	//同一个类能不能访问
	//结果->都能够正常访问到
	public static void main(String[] args) {
		Teacher2 teacher = new Teacher2();
		teacher.name = "张三";
		teacher.age = 30;
		teacher.teach = "技术";
		teacher.lesson = "Java";
	}
	
}

Student类

package day03081;

public class Student extends Teacher2 {

	public static void main(String[] args) {
		Teacher2 teacher = new Teacher2();
		teacher.name = "张三";
		teacher.age = 30;
		teacher.teach = "技术";
//		teacher.lesson = "Java";
		
		Student student = new Student();
		student.age = 10;
		student.name = "zhangsan";
		student.teach = "zhangsan"; //同一包内继承父类,子类可以正常访问 默认
	}
	
}

Test类

package day03081;

public class Test {

	//同一个包里面其他类,其他类里面引用原始类创建一个对象,看能否访问四种属性
	//结果->只有private无法正常访问
	public static void main(String[] args) {
		Teacher teacher = new Teacher();
		teacher.name = "张三";
		teacher.age = 30;
		teacher.teach = "技术";
//		teacher.lesson = "Java"; //报错
	}
	
}

day03082包

Student类

package day03082;

import day03081.Teacher2;

//import day03081.Teacher; //无修饰符的类,无法跨包使用

public class Student extends Teacher2 {

	public static void main(String[] args) {
//		Teacher teacher = new Teacher();
//		teacher.name = "张三";
//		teacher.age = 30;
//		teacher.teach = "技术";
//		teacher.lesson = "Java";
		Student student = new Student();
		student.age = 12;
		student.name = "zhangsan"; //不同包,子类可以正常访问
//		student.teach = "技术"; //报错,不同包,子类无法正常访问
//		student.lesson = "Java"; //报错
	}
	
}

Test类

package day03082;

import day03081.Teacher2;

public class Test {

	//不同包下,只有public可以正常访问
	public static void main(String[] args) {
		Teacher2 teacher = new Teacher2();
//		teacher.name = "张三";
//		teacher.age = 30; //报错
//		teacher.teach = "技术"; //报错
//		teacher.lesson = "Java"; //报错
	}
	
}
举报

相关推荐

冲刺第三周

第三周预习:java IO

第三周作业

第三周总结

第三周周四

第三周练习总结

算法训练 第三周

0 条评论