单词积累:
1、引用--import(语法)
不同包中的类
* 先导包(借类.引入.导入类)
* 语法:
* import 包名.类名;
* 位置
* package以下,类名以上
package day02;
import sun.security.mscapi.CPublicKey;
//不同包当中可以有重名类
public class Phone {
public void send ( int num, String msg){//信息 message
System.out.println("给:" + num + "发送信息为:" + msg);
}
//需要提供一个整数,由num接受
public void call ( int num){//传递数据 形式参数、形参
System.out.println("正在呼叫:" + num);//number 数字
}
/*
方法的参数
由调用者提供给方法的数据
*方法名(参数类型1 参数名1,参数类型2 参数名2,,)
*/
public static void main(String[] args) {
//创建了一个Phone对象
//Phone p1为了方便操作、管理刚刚创建的Phone对象
//变量--后面介绍
Phone p1 = new Phone();
p1.call(1111111111);//num系统自己代出,不用手写,手写报红;msg同理
p1.send(123, "快一点");
}
}
package day02.am;
import day02.Phone;
public class Test01 {
public static void main(String[] args) {//这个Test01和Phone不是邻居
Phone p1=new Phone();
Phone p2=new Phone();
Phone p3=new Phone();
int a1=12345;
p1.call(a1);
p2.call(4567);
p1.send(123,"你好");
/*
*不同包中的类
* 先导包(借类.引入.导入类)
* 语法:
* import 包名.类名;
* 位置
* package以下,类名以上
*/
}
}
2、继承--extends (语法)
package day02;
public class Phone2 extends Phone {
//call方法,模拟从父类继承过来的的公司 语法:extends继承
//对公司内部进行整改,修改从父类继承过来的方法
/**
* 有很多方法自行实现不了,或者实现起来非常困难
* 但是Java提供的方法又无法直接使用
* 解决方法
* 1、继承具有该方法的类
* 2、根据需求修改从父类继承过来的方法
*/
@Override//重写父类call方法
public void call(int num) {
System.out.println("修改一下");
System.out.println("正在拨打"+num);
}
public static void main(String[] args) {
Phone2 a=new Phone2();
a.call(12345);
a.send(123,"abc");
}
}
/**
* 儿子 继承 父亲
* Phone2 extends Phone
* 子类 父类
*
*/
3、绘图--paint
4、面板--JPanel
5、绘制矩形--drawRect
6、绘制直线--drawLine
7、绘制字符串--drawString
8、绘制椭圆(空心)--drawOval
9、绘制椭圆(实心)--fillOval
计算机语言--Frame(创建窗体)
package day02.am;
import javax.swing.*;
public class Test02 {
/*
*JFrame类 注意JF大写 JFrame是指一个计算机语言-java的GUI程序的基本思路是以JFrame为基础
* 它是屏幕上window的对象,能够最大化、最小化、关闭。
* 窗口的默认关闭方式 窗口右上角的x
* 关闭窗体,但是没有结束程序 ---默认
* 不关闭窗体,也不结束程序
* 关闭窗体,结束程序 ---需要的
*/
public static void main(String[] args) {
JFrame f=new JFrame();
//创建JFrame对象
f.setDefaultCloseOperation(3);//退出窗体的同时结束程序
//设置窗体的默认关闭操作
//Default:默认的 close:关闭 Operation:操作
f.setVisible(true);//设置窗体的可视化
//手动显示出窗体对象;(窗体默认隐藏,需要手动显示出窗体对象)
//set:设置 Visible:可视化的
//true:显示 false:不显示
f.setBounds(300,100,400,600);
//设置窗体的尺寸、位置
f.setResizable(false);
//禁止重置窗体的尺寸
}
}
/*
使用java提供的类
直接使用 java.lang包
先导包 非java.lang包
*/
继承JPanel的paint方法进行绘图
package day02.pm;
import javax.swing.*;
import java.awt.*;
import java.awt.image.BufferedImage;
public class Test01 extends JPanel{
//修改从JPanel继承过来的paint方法
@Override
public void paint(Graphics g) {
super.paint(g);//保留,必须放在方法的首行
g.drawLine(0,0,100,100);//绘制一条直线
g.drawString("大家好",50,50);//绘制字符串
g.drawRect(100,100,100,100);//绘制矩形
g.drawOval(100,100,100,100);//绘制椭圆(空心)
g.setColor(Color.green);//Color首字母大写 Java提供好类 画新的记得先换颜色
g.fillOval(105,105,90,90);//填充椭圆(实心)
;
}
public static void main(String[] args) {
JFrame a=new JFrame();//创建JFramed对象
a.setBounds(300,100,400,600);//设置窗体位置、尺寸
a.setResizable(false);//禁止重置尺寸
a.setDefaultCloseOperation(3);//设置窗体默认关闭操作
a.setVisible(true);//显示出窗体
Test01 my=new Test01();//创建画布对象 my
a.add(my);//将画布对象my添加到窗体上 add需要什么类型的参数
}
}