java之葵花宝典

import java.util.Arrays;
import java.util.Scanner;

/**
 * 
 */

/**
 * @author 男神许老师
 *2020年1月1日
 * 
 */
//class Student{
//	public int age;
//	public String name;
//	public Student() {
//		System.out.println("this is a student");
//	}
//    public Student(String name) {
//    	this();
//    	this.name=name;
//    }
//    
//}
//public class new1 {
//	public static void main(String[] args) {
//		Scanner sc=new Scanner(System.in);
//		//面向对象程序设计三大特性:封装、继承、多态
//		//java中可以通过this调用已经存在的构造方法
//		
//		Student a=new Student();
//		Student b=new Student("许远志");
//	    System.out.println(a.name);
//	    System.out.println(b.name);
////		int a;
////        while(sc.hasNext()) {
////        	a=sc.nextInt();
////        	System.out.println(2<<a-1);
//////        }
////		 double a=10.0;
////		 final int b=5;//java 中使用关键字final来定义常量
////		// System.out.println(3==5);
////		// b=20;
////		 int arr[]= {2};//静态初始化
////		 int arr1[]=new int[1];//动态初始化
//		// arr1=arr;
//	//	 arr1[0]=2;
//	
//		//基本数据类型比较直接比较数值,引用数据类型比较直接比较地址
//		// System.out.println(arr.equals(arr1));
//		 //equals 可以只可以比较引用数据类型,方法可以重写
//		 //==既可以比较基本数据类型又可以比较引用数据类型
//	//	 System.out.println(arr[0]==arr1[0]);
////		 int arrays[][];//二维数组
////		 Arrays.sort(arr);
////		 System.out.println(arr[1]);
////		System.out.println(Arrays.binarySearch(arr,2));
//		//值传递不会改变参数的值
////		int a=3;
////		System.out.println("改变之前:"+a);
////		tri(a);
////		System.out.println("改变之后:"+a);
////		//引用传递会改变参数的值
////		int arr[]= {1,2,3};
////		System.out.println("改变之前:"+Arrays.toString(arr));
////		fun(arr);
////		System.out.println("改变之后:"+Arrays.toString(arr));
////方法重载:同一个类中两个或以上的同名方法,参数类型,个数或顺序不同,称为方法的重载
//	}
////	public static void tri(int a) {
////		a=a*3;
////	}
////	public static void fun(int arr[]) {
////		for(int i=0;i<arr.length;i++) {
////			arr[i]+=1;
////		}
//	}
//}
//继承
//一个类只能有一个直接基类
//final 修饰的类不能有派生类,String 是典型特例
class Student{
	public int age;
	public String name;
	public Student(int age,String name) {
		this.age=age;
		this.name=name;
	}
	public void print() {
		System.out.println("你好");
	}
}
//派生类内不能访问基类中private修饰的属性或方法
class BigStudent extends Student{
	public String major;
	public BigStudent() {
		super(25,"龟男");//调用基类的构造方法,可以有参数也可以无参数
		//super 用于引用基类中的属性或方法super.属性,super.方法
		//this 用于引用本类中的属性或方法 this.属性,this.方法
		this.major=super.name;
	}
	//派生类对基类中定义的方法进行重新实现称为方法重写
	//重写只能出现在继承之中
	public void print() {
		System.out.println("啦啦啦");
		
	}
}
public class new1 {
	public static void main(String[] args) {
		Student a=new Student(12,"嘴男");
		Student b=new BigStudent();
//		System.out.println(a.age+b.age);
//		System.out.println(a.name+b.name);
//	    System.out.println(b.major);
		
		a.print();
		b.print();
	}
}
	

发布了37 篇原创文章 · 获赞 19 · 访问量 842

猜你喜欢

转载自blog.csdn.net/qq_44867340/article/details/103876114