Java高级 面向对象(封装 继承 多态 )
第一点:
成员变量
属性用成员变量去表示
public String name;
成员方法
属性用成员变量去表示
public void eat(){
//输在控制台的语句
System.out.println("L LOVE SEE you eat english");
}
第二点:创建一个对象
People d = new People();
System.out.println(d.name);//获取成员变量name
d.eat();//获取成员方法d.eat();
第三点:创建对象
Student s1 = new Student();
s1.name="湖南";
s1.age = 30;
s1.study();
System.out.println(s1.name+","+s1.age);
面向对象编程思想,首先理解什么是对象 你要用对象干什么事情。利用对象思想去解决问题。
package com.D1; public class Student { String name; int age; //无惨构造 public Student() { super(); // TODO Auto-generated constructor stub } //有参构造 public Student(String name, int age) { super(); this.name = name; this.age = age; } //get and set 的方法 public String getName() { return name; } public void setName(String name) { this.name = name; } public int getAge() { return age; } public void setAge(int age) { this.age = age; } public void study(){ System.out.println("好好学习,天天向上"); } public void doHomeWork(){ System.out.println("键盘敲烂,月薪过万"); } public void play(){ System.out.println("玩玩游戏,人生百拜拜"); } @Override public String toString() { return "Student [name=" + name + ", age=" + age + "]"; } }
package com.D1; public class StudentTest { public static void main(String[] args) { //创建对象名为student Student s = new Student(); System.out.println(s); //使用对象成员变量 System.out.println(s.name+","+s.age); System.out.println("调用方法用 对象中S.属性名 修饰成员变量"); s.name = "我是student对象湖北"; s.age = 28; //调用对象的方法 System.out.println("调用方法用 对象中S.动作名(); 修饰成员方法"); s.study(); s.doHomeWork(); s.play(); System.out.println(s.name+","+s.age); //创建第二个对象 Student s1 = new Student(); s1.name="湖南"; s1.age = 30; s1.study(); System.out.println(s1.name+","+s1.age); //创建第三个对象 Student s2 = new Student(); s2.name="河北"; s2.age = 30; System.out.println(s2.name+","+s2.age); System.out.println(s1==s2); //创建第四个对象 Student s3 = new Student(); s3.name="河南"; s3.age = 20; System.out.println(s3.name+","+s3.age); System.out.println(s1==s3); } }
package com.D2; public class Student { //成员变量 private String name; private int age; public Student() { super(); // TODO Auto-generated constructor stub } public Student(String name, int age) { super(); this.name = name; this.age = age; } public String getName() { return name; } public void setName(String name) { this.name = name; } public int getAge() { return age; } public void setAge(int age) { this.age = age; } @Override public String toString() { return "Student [name=" + name + ", age=" + age + "]"; } // //定义一个设置姓名的方法 // public void setName(String name1){ // name = name1; // } // //定义一个获取姓名的方法 // public String getName(){ // return name; // } // //设置年龄 // public void setAge(int age1){ // if(age1>=0 && age1<=150){ // age = age1; // }else{ // System.out.println("年龄不合法"); // } // } // public int getAge(){ // return age; // } }
package com.D2; public class StudentTest { public static void main(String[] args) { // TODO Auto-generated method stub Student stu = new Student(); //设置学生的姓名 // stu.name = "maomao"; stu.setName("兴旺里路mao mao mao"); //获取学生的姓名 System.out.println(stu.getName()); //设置学生的年龄 stu.setAge(17); System.out.println(stu.getAge()); Student stu1 = new Student(); stu1.setName("天行健,举哀天下名"); System.out.println(stu1.getName()); //设置学生的年龄 stu1.setAge(34); System.out.println(stu1.getAge()); Student stu2 = new Student(); stu1.setName("生在盛世,当不服盛世"); System.out.println(stu1.getName()); //设置学生的年龄 stu1.setAge(23); System.out.println(stu1.getAge()); } }
String 字符串的学习过程。
package String; public class Demo1 { public static void main(String[] args) { String str1 = "我爱青年"; int l = str1.length(); System.out.println("字符长度为"+str1.length()); String str2 = "abcde"; char index = str2.charAt(4); System.out.println(index); String str3 = "加油!"; String str4 = str3.concat("奥利给"); System.out.println(str4); String str5 = "hello.java"; boolean boo1 = str5.endsWith(".java"); System.out.println(boo1); String str6 = "abcdefehcd"; int index1 = str6.indexOf("cd"); System.out.println(index1); String str7 = "abcdefehcd"; int index2 = str7.lastIndexOf("cd"); System.out.println(index2); String str8 ="XXX,我真的想骂你"; String str9 = str8.replace('X', '*'); System.out.println(str9); String str10 = "ABC你好y"; String str11 = str10.toLowerCase(); System.out.println(str11); String str12 = "ABC你好y"; String str13 = str12.toUpperCase(); System.out.println(str13); String str14 = " 1 23 "; String str15 = str14.trim(); System.out.println(str15); } }
package String; public class Demo2 { public static void main(String[] args) { // TODO Auto-generated method stub int[] arr={11,11,23,4,3678,245,34,3,67,89,345}; //"[1,2,3]" //调用方法,返回拼接好的字符串 String str = arrayToString(arr); System.out.println(str); } public static String arrayToString(int[] arr){ //在方法中遍历数组,按照要求进行拼接 String s = ""; s += "["; //遍历数组 for(int i=0;i
package String; import java.util.Scanner; public class Demo3 { public static void main(String[] args) { // TODO Auto-generated method stub Scanner scanner = new Scanner(System.in); System.out.println("请输入一个字符串"); String str = scanner.next(); String s = reverse(str); System.out.println(s); } public static String reverse(String str){ //定义一个字符串去作为返回的内容 String s = ""; //倒叙遍历str字符串中的字符 for(int i=str.length()-1;i>=0;--i){ s = s+str.charAt(i); } return s; } }
package String; public class Demo4 { public static void main(String[] args) { // TODO Auto-generated method stub String s = ""; long time1 = System.currentTimeMillis(); System.out.println(time1); for(int i=0;i<100000;++i){ s = s+"a"; } long time2 = System.currentTimeMillis(); System.out.println(time2-time1); } }
package String; public class Demo5 { public static void main(String[] args) { // 创建一个36开白可变的字符串对象,不包含任何内容 StringBuilder sb = new StringBuilder(); System.out.println(sb); System.out.println(sb.length()); //将一个字符串转换为可变内容的字符串 StringBuilder sb1 = new StringBuilder("hello"); System.out.println(sb1); System.out.println(sb1.length()); } }
package String; public class Demo6 { public static void main(String[] args) { // TODO Auto-generated method stub StringBuilder sb = new StringBuilder(); StringBuilder sb2 = sb.append("hello"); System.out.println(sb); System.out.println(sb==sb2); sb.append(" AAAAhellor"); sb.append("BBBBworldr"); sb.append("CCCCjavar"); sb.append(100); //链式编程的定义 sb.append(" hellor ").append("worldr").append("javar").append(100); System.out.println(sb); //将字符串反转 sb.reverse(); System.out.println(sb); } }
package String; public class Demo7 { public static void main(String[] args) { // TODO Auto-generated method stub String s = ""; StringBuilder sb = new StringBuilder(s); //获取当前这一时刻 long time1 = System.currentTimeMillis(); System.out.println(time1); for(int i=0;i<100000;++i){ sb.append("a"); } long time2 = System.currentTimeMillis(); System.out.println(time2-time1); s = sb.toString(); } }
package String; public class Demo8 { public static void main(String[] args) { // TODO Auto-generated method stub int[] arr={145,2,3,34,89}; //"[1,2,3]" //调用方法,返回拼接好的字符串 String str = arrayToString(arr); System.out.println(str); } public static String arrayToString(int[] arr){ //在方法中遍历数组,按照要求进行拼接 // String s = ""; StringBuilder s = new StringBuilder(""); // s += "["; s.append("["); //遍历数组 for(int i=0;i
package String; import java.util.Scanner; public class Demo9 { public static void main(String[] args) { // TODO Auto-generated method stub Scanner scanner = new Scanner(System.in); System.out.println("请输入一个字符串"); String str = scanner.next(); String s = reverse(str); System.out.println(s); } public static String reverse(String str){ // //定义一个字符串去作为返回的内容 // String s = ""; // //倒叙遍历str字符串中的字符 // for(int i=str.length()-1;i>=0;--i){ // s = s+str.charAt(i); // } return new StringBuilder(str).reverse().toString(); } }
package String; public class Snippet { public static void main(String[] args) { String str1 = "我爱青年"; int l = str1.length(); System.out.println("字符串的长度为:"+l); String str2 = "abcde"; char index = str2.charAt(4); System.out.println(index); String str3 = "加油!"; String str4 = str3.concat("奥利给"); System.out.println(str4); String str5 = "hello.java"; boolean boo1 = str5.endsWith(".java"); System.out.println(boo1); String str6 = "abcdefehcd"; int index1 = str6.indexOf("cd"); System.out.println(index1); String str7 = "abcdefehcd"; int index2 = str7.lastIndexOf("cd"); System.out.println(index2); String str8 ="XXX,我真的想骂你"; String str9 = str8.replace('X', '*'); System.out.println(str9); String str10 = "ABC你好y"; String str11 = str10.toLowerCase(); System.out.println(str11); String str12 = "ABC你好y"; String str13 = str12.toUpperCase(); System.out.println(str13); String str14 = " 1 23 "; String str15 = str14.trim(); System.out.println(str15); } }
Arraylist的集合
package arraylist; import java.util.ArrayList; import java.util.Iterator; public class ArrayListDemo1 { public static void main(String[] args) { // 1.创建一个集合 ArrayList list = new ArrayList(); //2.给集合添加元素 //创建学生对象 Student stu0 = new Student("我是要删的数据",18); Student stu1 = new Student("狐疑",18); Student stu2 = new Student("糊涂",19); Student stu3 = new Student("呼啸",20); Student stu4 = new Student("环宇",21); list.add(stu0); list.add(stu1); list.add(stu2); list.add(stu3); list.add(stu4); list.hashCode(); //3.删除集合中的指定元素 boolean remove(int index) list.remove(0); //4.获取集合中指定索引的元素 Object get(int index) System.out.println(list.get(0)); //5.修改集合中指定元素的值 //public E set(int index,E element)修改指定索引处的元素,返回被修改的元素 list.set(2, new Student("maomao",21)); //返回集合中元素的个数 int size() int count = list.size(); System.out.println("集合中的元素个数为:"+count); System.out.println("何为编程?"); //遍历元素 System.out.println("遍历元素第一种方式·"); for (int i = 0; i < args.length; i++) { String string = args[i]; System.out.println(i); } System.out.println(list); System.out.println("遍历第二种方式"); for (Iterator iterator = list.iterator(); iterator.hasNext();) { Object object = (Object) iterator.next(); System.out.println(list); System.out.println(list.size()); } System.out.println("第三种方式"); for (Object object : list) { System.out.println(list); } } }
package arraylist; import java.util.ArrayList; import java.util.Iterator; public class ArrayListDemo2 { public static void main(String[] args) { //1.创建一个集合 ArrayList list = new ArrayList(); //2.往集合中添加3个字符串 list.add("诸葛亮"); list.add("刘备"); list.add("张飞"); list.add("李四"); list.add("我是list集合"); //3-4遍历集合 for(int i=0;i package arraylist; public class Student { private String name; private int age; public Student(String name, int age) { super(); this.name = name; this.age = age; } public Student() { super(); // TODO Auto-generated constructor stub } public String getName() { return name; } public void setName(String name) { this.name = name; } public int getAge() { return age; } public void setAge(int age) { this.age = age; } @Override public String toString() { // TODO Auto-generated method stub return "Student[age="+age+",name="+name+"]"; } @Override public int hashCode() { // TODO Auto-generated method stub return super.hashCode(); } }
案例接口。
package interfacea; public interface USBA { public void turnOn(); //设备启动' public void turnruning(); //设备运行 public void turnOff(); //设备关闭 public void name(); //设备名称 public void color(); //设备颜色 public void height();//设备高度 public void weight();//设备宽度 public void length(); //设备长度 public void m();//设备的M方法 }package interfacea; public class aer implements USBA{ @Override public void turnOn() { // TODO Auto-generated method stub System.out.println("are已启动,请开始以下程序"); } @Override public void turnruning() { // TODO Auto-generated method stub System.out.println("are开始运行自己设定的程序"); } @Override public void turnOff() { // TODO Auto-generated method stub System.out.println("手机结束自己运行的程序系统"); } @Override public void name() { // TODO Auto-generated method stub System.out.println("are名称为huaweiwww"); } @Override public void color() { // TODO Auto-generated method stub System.out.println("are色彩为back"); } @Override public void height() { // TODO Auto-generated method stub System.out.println("are高度为8cm"); } @Override public void weight() { // TODO Auto-generated method stub System.out.println("are宽度为15cm"); } @Override public void length() { // TODO Auto-generated method stub System.out.println("are长度为20cm"); } @Override public void m() { // TODO Auto-generated method stub System.out.println("m有飒飒"); } }package interfacea; public class ElectronicWhiteboard implements USBA{ @Override public void turnOn() { // TODO Auto-generated method stub System.out.println("电子白板真在运行,打开你要的软件,并开始运行"); } @Override public void turnruning() { // TODO Auto-generated method stub System.out.println("电子白板真在运行,正在运行这个程序,并开始运行"); } @Override public void turnOff() { // TODO Auto-generated method stub System.out.println("电子白板结束自己运行的程序系统"); } @Override public void name() { // TODO Auto-generated method stub System.out.println("电子白板名称为huaweiwww"); } @Override public void color() { // TODO Auto-generated method stub System.out.println("电子白板色彩为back"); } @Override public void height() { // TODO Auto-generated method stub System.out.println("电子白板高度为150cm"); } @Override public void weight() { // TODO Auto-generated method stub System.out.println("电子白板宽度为200cm"); } @Override public void length() { // TODO Auto-generated method stub System.out.println("电子白板长度为300cm"); } @Override public void m() { // TODO Auto-generated method stub System.out.println("m有飒飒"); } }package interfacea; public class Mousea implements USBA { @Override public void turnOn() { // TODO Auto-generated method stub System.out.println("鼠标已启动,请开始以下程序"); } @Override public void turnruning() { // TODO Auto-generated method stub System.out.println("鼠标开始运行自己设定的程序"); } @Override public void turnOff() { // TODO Auto-generated method stub System.out.println("鼠标结束自己运行的程序系统"); } @Override public void name() { // TODO Auto-generated method stub System.out.println("鼠标名称为huaweiwwwe"); } @Override public void color() { // TODO Auto-generated method stub System.out.println("鼠标色彩为back"); } @Override public void height() { // TODO Auto-generated method stub System.out.println("鼠标高度为50mm"); } @Override public void weight() { // TODO Auto-generated method stub System.out.println("鼠标宽度为500mm"); } @Override public void length() { // TODO Auto-generated method stub System.out.println("鼠标长度为900mm"); } @Override public void m() { // TODO Auto-generated method stub System.out.println("m有飒飒"); } }package interfacea; public class Phonea implements USBA{ @Override public void turnOn() { // TODO Auto-generated method stub System.out.println("手机已启动,请开始以下程序"); } @Override public void turnruning() { // TODO Auto-generated method stub System.out.println("手机开始运行自己设定的程序"); } @Override public void turnOff() { // TODO Auto-generated method stub System.out.println("手机结束自己运行的程序系统"); } @Override public void name() { // TODO Auto-generated method stub System.out.println("手机名称为huaweiwww"); } @Override public void color() { // TODO Auto-generated method stub System.out.println("手机色彩为back"); } @Override public void height() { // TODO Auto-generated method stub System.out.println("手机高度为8cm"); } @Override public void weight() { // TODO Auto-generated method stub System.out.println("手机宽度为15cm"); } @Override public void length() { // TODO Auto-generated method stub System.out.println("手机长度为20cm"); } @Override public void m() { // TODO Auto-generated method stub System.out.println("m有飒飒"); } }package interfacea; public class telephone implements USBA { @Override public void turnOn() { // System.out.println("电话已启动,请打电话"); } @Override public void turnruning() { // TODO Auto-generated method stub System.out.println("电话开始进行联系对方"); } @Override public void turnOff() { // TODO Auto-generated method stub System.out.println("电话结束:请把电源turnoff"); } @Override public void name() { // TODO Auto-generated method stub System.out.println("电话名称为大哥大"); } @Override public void color() { // TODO Auto-generated method stub System.out.println("电话色彩为开门红"); } @Override public void height() { // TODO Auto-generated method stub System.out.println("电话高度为6cm"); } @Override public void weight() { // TODO Auto-generated method stub System.out.println("电话宽度为12cm"); } @Override public void length() { // TODO Auto-generated method stub System.out.println("电话长度为18cm"); } @Override public void m() { // TODO Auto-generated method stub System.out.println("MMMMMMMMMMMMMM"); } }
package interfacea; import java.util.ArrayList; public class DwmoTesta { public static void main(String[] args) { ArrayListusbs =new ArrayList (); usbs.add( new Mousea()); //类 usbs.add(new Keyboarda()); usbs.add(new Phonea()); usbs.add(new ElectronicWhiteboard ()); usbs.add(new telephone ()); usbs.add(new aer()); usbs.add(new HuBING()); System.out.println("用for循化输出内容"); for (int i = 0; i < usbs.size(); i++) { usbs.get(i).height(); } System.out.println("height"); for (int i = 0; i < usbs.size(); i++) { usbs.get(i).weight(); } System.out.println("weight"); for (int i = 0; i < usbs.size(); i++) { usbs.get(i).length(); } System.out.println("设定设备的长:宽:高"); for (int i = 0; i < usbs.size(); i++) { usbs.get(i).turnOn(); //接口方法 } System.out.println("设定程序启动的系统"); System.out.println("============================"); for (int i = 0; i < usbs.size(); i++) { usbs.get(i).turnOff(); } System.out.println("设置程序正在运行的程序"); System.out.println("============================"); for (int i = 0; i < usbs.size(); i++) { usbs.get(i).turnruning(); } System.out.println("设置程序名称"); System.out.println("**********************"); for (int i = 0; i < usbs.size(); i++) { usbs.get(i).name(); } System.out.println("设置设备色彩为"); System.out.println("**********************"); for (int i = 0; i < usbs.size(); i++) { usbs.get(i).color(); } for (int i = 0; i < usbs.size(); i++) { usbs.get(i).m(); } } } 欢迎分享,转载请注明来源:内存溢出
评论列表(0条)