2018年7月18日星期三
今天是第一天写JAVA编程的学习笔记。上一次写代码已经是四年前了,这几年几乎和代码绝了缘。
废话不多说,下面是关于今天学习的总结。
我认为学习关键的是解决问题,能够解决自己心中的问题,就是在真正学习,而不是在记忆或背诵。
什么是程序?
比如说,我去饭店,我说给我来一盘西红柿炒鸡蛋。这就是一个程序,至于西红柿炒鸡蛋怎么炒出来的,饭店会给我实现出来。程序就是一串命令的组合。
程序从哪里开始运行?
程序从主函数开始,这个入口函数是main函数,返回值为void,需要定义为static静态,为public公开型,所以这个入口函数定义为:
public static void main(String[] args){ }
Main函数是带有参数的,后面中括号{}里就是函数的具体内容,相当于你要说的很多话。
什么是类和对象?
Java语言是面向对象语言,Java SE标准版,中包括7000多个类。什么是类呢?
一个小孩子第一次看到一只土狗,好奇的问妈妈,这是什么东西,妈妈说这时一只狗,小孩以后看到像这样的就是狗,又有一天,小孩看到一只泰迪,他又问,妈妈这时什么,妈妈说这个还是狗呀,小孩有一些懵了,狗到底是什么?又有一天小孩子看到一只阿拉斯加狗,小孩又问,妈妈这是什么,妈妈说这还是狗呀,这时小孩可能认识到,原来有四条腿,在地上爬的东西是狗。这里的狗就是一个概念,我们把这叫狗类,狗属于动物,所有如果你看到狗都说成是动物,也没有问题,因为狗类属于动物类。
亚洲黄皮肤的是人,非洲黑皮肤的是人,欧洲白皮肤的也是人,人是一个概念,叫做人类。人类只是一个概念,那是“我”是一个真是的存在,我就是一个对象,一个属于人类的对象。你也是一个对象,他也是一个对象。
下面写第一个程序,结果是出现一个窗口。
import java.awt.Frame;
public class NewTest{
public static void main(String[] args){
Frame f=new Frame();
f.setSize(500,500);//设置窗口大小
f.setVisible(true);//现实窗口
}
}
这个时候窗口里是没有任何东西的,如果我要在窗口里画一些东西的话,可以在写一个类。由于Java自带了一个Panel类,所以,再写的类可以继承自Panel类,继承提高了代码的重用性。子类可以继承父类的所有方法,如果父类有是个方法,子类也拥有是个方法,子类还可以对父类的方法进行重写。
这个类如下。
class NewPanel() extends Panel{
public void paint(Graphics g){
g.drawLine(50,50,150,150);
}
}
定义之后,可以在主函数中使用这个类的所有方法。
以下上一段完整实现的代码。
import java.awt.*;
public class NewPanel{
public static void main(String[] args){
Frame f=new Frame();
f.setSize(500,500);
MyPanel mp=new MyPanel();
f.add(mp);
f.setVisible(true);
}
}
class MyPanel extends Panel{
public void paint(Graphics g){
g.drawLine(50,50,250,250);
}
}
注意,从开始写第一行代码的时候就要知道为什么写这行,先后顺序是要找要求来的,不是从头到尾顺着下来的。