一.类和对象
A.类
1.类是什么呢?
将一些共同的属性和行为组织到一个单元中,就得到了类。
2.类和对象之间的关系
类是对象的抽象,对象是类的实例。
3.如何定义类
语法:
public class 类名{
}
4.类的命名规则
a.不能使用Java中的关键字
b.不能包括任何嵌入的空格或点号".",以及除下划线"-",字符外的特殊字符
c.不能数字开头
B.对象
1.对象是什么呢?
在现实世界中客观存在的事物就叫做对象,对象中又包括了静态(属性)和动态(方法)行为。
2.属性
在类中定义属性的语法:
属性1的类型 属性1;
属性2的类型 属性2;
如:
String name;
int num;
3.方法
语法:访问修饰符 返回值类型 方法名(){}
如:
public String show(){
//方法体`
}
C.如何创建和使用对象
1.创建对象
语法:类名 对象名=new 类名();
如:在School中创建一个对象
School cent=new School();
2.使用对象
a.使用属性
语法:对象名.属性;
赋值: 对象名.属性=… ;
如:在School类中创建对象 cent 后
cent.name;
cent.name="小巧";
b.使用方法
语法:对象名.方法名();
如:在School类中创建方法show()后
cent.show();
D.实例:
public class Student {
String name;
int age; //定义属性
String classNo;
String hobby;
public void show(){ //定义方法
System.out.println(name+"\n年龄"+age+"\n就读于"+classNo+"\n爱好"+hobby);
}
}
class InitialStudent{
public static void main(String[] args) {
Student student=new Student(); //创建对象
student.name="张浩";
student.age=10;
student.classNo="S1班"; //给属性赋值
student.hobby="篮球";
student.show(); //调用方法
}
}
二:类的无参方法
1.编写方法步骤
a.定义方法名和返回值类型
b.在{}中编写方法的主体部分
2.返回值
语法:return 表达式;
A.如果方法没有返回值,那么返回值类型为void。
语法:
public void 类名{
}
B…如果方法有返回值
语法:public 返回值类型 方法名{}
接收:首先new一个对象,然后在main方法中声明一个变量接受返回值
如:返回值是String
public String show(){
return 表达式;
}
如:new一个对象mm
String a=mm . show();
C. return语句的意思
跳出方法,给出结果(如果方法产生一个值,这个值放在return后面,即<表达式>部分)
3.方法调用
在同一类中:
在static方法中:要new一个对象,用对象名.方法(); 也可以用类名.方法();
在非static方法中:可以用方法名(); 也可以用对象名.方法();
在不同类中:
要new一个对象,再用对象名.方法();
public class Manager {
public String show() { //String 类型的无参方法
String name="kjhgf";
return name; //返回String类型的name
}
public void show1() { //没有返回值的void方法
String name1="jhgf";
System.out.print("用户名:"+name1);
}
}
public class ManagerTesr {
public static void main(String[] args) {
Manager ma=new Manager(); //声明一个ma对象
ma.show1(); //调用方法
String a=ma.show(); //声明一个变量a接收name
System.out.print("用户名:"+a);
}
}
三:类的有参方法
1.有参方法的定义
语法:
<访问修饰符 >返回值类型<方法名>(参数列表){
//方法的主体
}
访问修饰符 :指的是该方法能够被访问的权限范围,如public、private | |
---|---|
返回值类型 :方法返回值必须与所说明的类型相匹配,且用return语句返回值 | |
参数列表 :指传送给方法的参数列表,用逗号隔开。它的格式 数据类型 参数1,… |
2.调用带参方法
语法:
对象名.方法名(参数1,参数2,…)
注意:
1.先实例化对象,再调用方法
2.实参的类型、数量、顺序都要与形参一一对应。
3.有参与无参的不同点
在调用带参方法时必须传入实际的参数的值。
4.实例
public class S1 {
String[] names =new String[30]; //姓名数组
public void addName(String name) { //有参方法
}
public void showNames(){ //无参方法
}
}
/**
*测试
*/
import java.util.*;
public class S2 {
public static void main(String[] args) {
S1 st=new S1(); //new一个st的对象
Scanner in=new Scanner(System.in);
for (int i = 0; i < 5; i++) {
System.out.println("请输入学生的名字:");
String newName=in.next(); //循环输入新姓
/**
*将输入的新姓名传送到有
st.addName(newName); *参方法中所定义的姓名
} */
st.showNames(); //调用无参方法显示所输入新的姓名
}
}
5.包
a.声明包
语法:package 包名;
b.注意
包的声明必须是Java源文件中的第一条非注释性语句,而且一个源文件只能有一个包声明语句。
包的名字通常由小写字母组成,不能以圆点开头或结尾。
c.创建包方式
1.分别创建包和类
2.在创建包的过程中创建类所属的包
d.导入包
导入包中的某一个特定的类:
语法:import.包名.类名;
导入包的某些类:
语法:import.包名;
四:字符串
1.字符串是什么呢?
字符串就是由一系列字符组成的序列。
2.如何使用字符串
a.定义并初始化字符串
b.使用字符串,对字符串进行一些处理
如:String a=“Hello”;
3.如何创建字符串对象
a.创建一个空字符串
String a=new String();
b. 创建一个字符串对象"Hello"
String a=new String(){“Hello”}
4.
语法
字符串的长度 : 字符串1. length(); | |
---|---|
字符串的比较 : 字符串1. equals(字符串2); 或字符串1. equalsIgnore Case(字符串2); | |
字符串的连接 : String a+b; 或 字符串1. concat(字符串2); | |
字符串的拆分 : 字符串1. split(String separator ,int limit); | |
字符串的查询 :字符串. indexOf (字符);(得到的是第一个匹配字符的位置) | |
或 :字符串. lastIndexOf (字符);(得到的是最后一个匹配的位置) | |
字符串的提取 :字符串.substring(int index);(得到的是从此位置开始后面的字符串) | |
或:字符串.substring(int begigning ,int ending);(得到的是位置中间的字符串) |
如:
import java.util.*;
public class Dcyyt{
public static void main(String[] a);
Scanner in=new Scanner(System.in)
String[] ss=new String[10]; //声明一个String的数组
String a="jhgfdxgz";
system.out.println(a.length()); //输出a的长度
system.out.println(a.equals("jhgfd"));//判断a是否等于jhgfd,若等于输出true
system.out.println(a+"gftr"); //a与gftr相连接
ss= a.split(""); //将a拆分,并将拆分后的每一个字符都保存在ss数组中
int index=a.indexOf('g'); //查询g在a中第一次出现的位置,声明index变量来接收
int index1=a.lastIndexOf('g'); //查询g在a中最后一次出现的位置,
//声明index1变量来接收
String b=a.substring(2); //提取下标为2的字符,并声明b来接收
String c=a.substring(2,4); //提取下标为2~4之间的字符串,并声明c来接收
}
5. StringBuffer类
a. StringBuffer是什么呢?
StringBuffer 它是String类的增强类,也是用来存储字符串的
b. StringBuffer 如何使用
.1. 定义并初始化字符串
- 使用Stringbuffer对象
c. 常见Stringbuffer类方法
转换(将StringBuffer转换为String):字符串1. toString(); | |
---|---|
连接:字符串1.=append(字符串2); | |
插入:字符串1. insert(位置,参数); |
如:
import java.util.*;
public class hg {
public static void main(String[] args) {
Scanner in=new Scanner(System.in);
StringBuffer sb=new StringBuffer("青春无悔");
//声明StringBuffer类sb对象,并且赋值
StringBuffer sb1=sb.append("我心永恒");
System.out.println(sb1); //输出拼接后的sb1
System.out.println("请输入一串数字:");
String nums=in.next();
StringBuffer str=new StringBuffer(nums);
//接收数字串,存放于StringBuffer类型的对象中
for (int i =str.length()-3;i>0; i=i-3) {
str.insert(i, ','); //从后往前每隔三位添加逗号
}
System.out.println(str);
}
}