Java语言jdk-14平台_Window 模式_2
Java语言jdk-14平台_Window 模式_2
JAVA语言可以是命令行模式的人机交互,可以是视窗模式的人机交互,可以是单机或服务器-网络交互,可以是计算机或手机模式应用,可以是……。在WINDOWS操作系统上的运行、API开发,……;可以是在ANDROID操作系统上的运行、API开发,……;可以是在ANDROID操作系统上的运行、API开发,……;可以是在HARMONYOS操作系统上的运行、API开发,……;等等。用各自提供的开发平台进行所需任务的语言描述;用各自提供的开发平台所需API的语言描述; 各自提供的开发平台进行所需任务的MFC语言描述,……。
有了照猫画虎、语言描述、编译测试、阅读理解,还需要学一下复杂的、多功能的、别开生面的图形模式-视窗模式的人机交互的想法与实现。
微软公司的创始人用BASIC语言实现了从命令行(需要专业一点的人员使用-DOS操作系统)到视窗-图形-可视化模式的人机交互(普通大众可以随便使用-WINDOWS操作系统)。
台式机、手提电脑可以使用,手机也变成了图形可视化界面。当然,自动控制仪器、飞机舰船、自动驾驶机器、……,都使用了可视化的人机交互及其控制面板。
可是,计算机语言是描述算法的—数据、计算、控制、IO、等语言词汇。那就需要一个可以表达图形的语言描述方法。像素、点阵、矩阵、集合、变换、……,数据结构、计算方法、显示模式等问题就出现了。
专业人士们为广大的普通软件程序开发者(当然,也是为了标准化、规范化、通用化、节约人力财力时间等-垄断一下_哈哈)提供了大量的底层函数(与硬件直接打交道的程序段)。有的叫API函数。
随着软件的程序代码数量急剧扩大,功能复杂化,程序段的相互交互复杂化,描述问题的大型化,……,成本、维护、修改、升级、迭代等因素的控制难度加大,错误、漏洞、BUG等的处理困难(因为硬件电路始终就是开关-逻辑电路)等。人们想出了面向对象方法。
当然,这也是由人的大脑处理能力和思维方式决定的。人要把实际问题的样式变成计算机可以处理的样式,需要多级变换。复杂的、抽象的、具体的、图形的、数字的、声音的、视觉的、触觉的、静止的、运动的、看得见的、看不见的、……。经过大脑处理,都变成一个称作对象的具体的东西,而对象的集合又叫做类-某一类事物或物体(抽象的-代数的、……)。用对象的特征-属性(一组数据)来表达其某时某刻某态-状态-样子(一组数据)。数据的变化—运动、变换、行为、操作等通过特定的函数—程序段来处理。如果将这些函数标准规范化当然最好。数据与函数被放置在一起打包当然好—这就是类。给类中的数据赋上具体值,对象的形态就确定了。先来就是需对对相互服务,联合解决复杂问题。而编程时,确实各自为战,并行开发。
这些类,就组成了类库,普通开发者只要使用类库及调用相应的函数就可以了。
对于具体语言来说,还需要了解其基本结构-框架-格式-模式-模板-标准样子。
如Java语言,非古老语言,借鉴了前期语言的优劣,考虑了现代计算机应用的前沿需要,成为一种解释型、交互式、面向对象、广泛的标准库、数据库、GUI模式的语言。满足了现代前沿的程序软件开发需求。对于GUI模式,则有许多可用的类库。但还是需要了解基本架构。当然,由于不同的程序开发者母文化的影响(也有专利问题),使用了不同的称谓。
图形开发界面的库:
按照Java语言的格式应该先有语句
import java.*;
用import导入包及指定该包中的类。例如:awt包中的所有类
import java.awt.*; //其中的点运算符就是类操作符
接下来就是类框架及其描述。Java语言有点像C或C++及C#。其实,Java语言就是在C或C++及C#之后紧跟着出现的高级语言。不过,他摒弃了C或C++及C#中不常用、接近硬件的、过分抽象繁杂的功能定义及代码分割用词汇等(像指针、操作符重载、多继承等)。主要成为了更面向对象方法的语言。
接下来就用相应的类调用其中的对象及其函数来定义一个视窗。
可以自己设置窗体的属性—数据(大小、窗体名、色彩、显示位置等),以获得需要的特征-样子-模样。
还需要swing的相关容器组件被引入。(细分、具体化了许多包、类、组件、函数-方法等)
接下来就是在WINDOW这个容器里添加各种人机交互元素(图标、空间、交互信息IO、等等)—仪器的控制面板那样的模式。
这里是编写后台代码,运行后显示。若见识过VS软件开发平台的,则知道其是即时可见的。拖拽图形要素布局视窗界面,后台自动生成运行代码(当然,熟练C++语言的可以直接像Java语言这样写代码,不见图形,运行生成)。运行的还是代码。
添加类,定义一个对象,添加对象静态属性—数据
代码编写
import java.awt.*;
import javax.swing.*;
public class Java_window_0{
public static void main(String args[]){
JFrame frame = new JFrame("My Java windowExample");
frame.setSize(500, 300);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);
}
}
编译运行
命令行指令:
>javacE:\program_code\Java_code\Java_window_0.java
>Java E:\program_code\Java_code\ Java_window_0.java
显示理解
添加另一个对象,按钮—动态的—要求提供服务的。
Java语言叫包--按钮组件—有属性(数据-特征-外貌-样式)和方法(函数-行为-过程-计算处理-变换)。
语言描述
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class Java_window_0{
public static void main(String[] args)
{
EventQueue.invokeLater(()->{
JFrame frame=new ButtonFrame();
frame.setTitle("Color Test of windowBy Buttons Based on Java language description""); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);
}
);
} }
class ButtonFrame extends JFrame{
private JPanel buttonPanel;
public ButtonFrame(){
setSize(800,500);
JButton greenButton = new JButton("Green");
JButton blueButton=new JButton("Blue");
JButton redButton=new JButton("Red");
buttonPanel=new JPanel();
buttonPanel.add(redButton);
buttonPanel.add(blueButton);
buttonPanel.add(greenButton);
add(buttonPanel);
ColorAction greenAction = new ColorAction(Color.GREEN);
ColorAction blueAction = new ColorAction(Color.BLUE);
ColorAction redAction = new ColorAction(Color.RED);
greenButton.addActionListener(greenAction);
blueButton.addActionListener(blueAction);
redButton.addActionListener(redAction);
}
private class ColorAction implementsActionListener{
private Color backgroundColor;
public ColorAction(Color c){
backgroundColor = c;
}
public voidactionPerformed(ActionEvent event){
buttonPanel.setBackground((backgroundColor));
}
}
}
编译与实现
命令行指令:
>javac E:\program_code\Java_code\Java_window_0.java
>Java E:\program_code\Java_code\ Java_window_0.java
显示理解
阅读理解
程序结构,语句表达,词汇应用,……。
修改扩充
完成自己的任务