java中怎样做出像vb里的mdi窗体???

CTaoHero 2003-08-30 09:53:10
如题!
...全文
37 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
jhlqab 2003-08-30
  • 打赏
  • 举报
回复
你看看JInternalFrame(子窗体)和JDesktopPane(父窗体)
CTaoHero 2003-08-30
  • 打赏
  • 举报
回复
jbuilder9下怎样做呢?
yshen 2003-08-30
  • 打赏
  • 举报
回复
给你一个例子,有三个.java文件JInternalFrameDemo.java、MainFrame.java、OwnInternalFrame.java


package jinternalframedemo;

import javax.swing.UIManager;
import java.awt.*;

/**
* <p>Title: </p>
* <p>Description: </p>
* <p>Copyright: Copyright (c) 2002</p>
* <p>Company: </p>
* @author unascribed
* @version 1.0
*/

public class JInternalFrameDemo {
private boolean packFrame = false;

//Construct the application
public JInternalFrameDemo() {
MainFrame frame = new MainFrame();
//Validate frames that have preset sizes
//Pack frames that have useful preferred size info, e.g. from their layout
if (packFrame) {
frame.pack();
}
else {
frame.validate();
}
//Center the window
Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
Dimension frameSize = frame.getSize();
if (frameSize.height > screenSize.height) {
frameSize.height = screenSize.height;
}
if (frameSize.width > screenSize.width) {
frameSize.width = screenSize.width;
}
frame.setLocation((screenSize.width - frameSize.width) / 2, (screenSize.height - frameSize.height) / 2);
frame.setVisible(true);
}
//Main method
public static void main(String[] args) {
/* try {
UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
}
catch(Exception e) {
e.printStackTrace();
}
*/ new JInternalFrameDemo();
}
}






package jinternalframedemo;

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

/**
* <p>Title: </p>
* <p>Description: </p>
* <p>Copyright: Copyright (c) 2002</p>
* <p>Company: </p>
* @author unascribed
* @version 1.0
*/

public class MainFrame extends JFrame {
// private JPanel contentPane;
private JDesktopPane desktop = new JDesktopPane();
// private BorderLayout borderLayout1 = new BorderLayout();
private JMenuBar jMenuBar1 = new JMenuBar();
private JMenu jMenu1 = new JMenu();
private JMenuItem jMenuItem1 = new JMenuItem();

//Construct the frame
public MainFrame() {
enableEvents(AWTEvent.WINDOW_EVENT_MASK);
try {
jbInit();
}
catch(Exception e) {
e.printStackTrace();
}
}
//Component initialization
private void jbInit() throws Exception {
//setIconImage(Toolkit.getDefaultToolkit().createImage(MainFrame.class.getResource("[Your Icon]")));
// contentPane = (JPanel) this.getContentPane();
// contentPane.setLayout(borderLayout1);
desktop.putClientProperty("JDesktopPane.dragMode", "outline");
this.setContentPane(desktop);
this.setJMenuBar(jMenuBar1);
this.setSize(new Dimension(400, 300));
this.setTitle("JInternalFrameDemo");
jMenu1.setFont(new java.awt.Font("Dialog", 0, 12));
jMenu1.setText("Option");
jMenuItem1.setFont(new java.awt.Font("Dialog", 0, 12));
jMenuItem1.setText("Add Frame");
jMenuItem1.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(ActionEvent e) {
jMenuItem1_actionPerformed(e);
}
});
jMenuBar1.add(jMenu1);
jMenu1.add(jMenuItem1);

}
//Overridden so we can exit when window is closed
protected void processWindowEvent(WindowEvent e) {
super.processWindowEvent(e);
if (e.getID() == WindowEvent.WINDOW_CLOSING) {
System.exit(0);
}
}

void jMenuItem1_actionPerformed(ActionEvent e) {
OwnInternalFrame frame = new OwnInternalFrame();
frame.setVisible(true); //necessary as of kestrel
desktop.add(frame);
try {
frame.setSelected(true);
} catch (java.beans.PropertyVetoException err) {
err.printStackTrace();
}
}
}


package jinternalframedemo;

import javax.swing.JInternalFrame;

/**
* <p>Title: </p>
* <p>Description: </p>
* <p>Copyright: Copyright (c) 2002</p>
* <p>Company: </p>
* @author unascribed
* @version 1.0
*/

public class OwnInternalFrame extends JInternalFrame {

static int frameNo = 0;
static final int xOffset = 20, yOffset = 20;

public OwnInternalFrame() {
super("InternalFrame " + (++frameNo), true, true, true, true);
setSize(150,150);
setLocation(xOffset*frameNo, yOffset*frameNo);
}
}
书籍目录: 第1篇 Visual C#基础编程实例 实例1 C#经典程序--Hello World 实例2 C#的简单输入输出(I/O) 实例3 C#的复杂输入输出(I/O) 实例4 通信录管理与维护 实例5 文件与目录管理 实例6 用户界面上的“Hello,World!” 实例7 组件化“Welcome”程序 实例8 网络上的“Hello World” 实例9 Ref、Out与Params描述符的应用 实例10 C#自动内存管理的应用 实例11 一个有趣栈类的实现 实例12 垃圾收集器管理与应用 实例13 垃圾收集器算法控制与使用 实例14 调用栈记录异常点 实例15 使用C#异常的栈跟踪 实例16 运行期间检测变量类型 实例17 常用值类型的原型定义 实例18 打印杨辉三角形 实例19 比较学生信息 实例20 获取车辆信息 实例21 简单角色类游戏的制作 实例22 旅馆住宿登记情况表制作 实例23 长命名空间的应用 实例24 文件特征计数 实例25 文本框输入数据的验证 第2篇 Visual C#级编程实例 实例26 窗体背景颜色动态变化 实例27 C#属性及应用 实例28 C#属性Metadata的管理与应用 实例29 使用Context属性创建CallThreshold Service 实例30 使用应用程序域 实例31 创建C#组件与客户应用程序 实例32 用OpenFileDialog类浏览或打开文件 实例33 在C#程序获得Win32 API 实例34 从C#调用COM组件 实例35 在C#程序修改HTML文件标题 实例36 下载Web页面 实例37 创建多线程应用程序 实例38 多线程的多次加载 实例39 单个线程同步运行 实例40 多线程同步运行 实例41 线程Thread Relative Static跟踪与实现 实例42 线程池(ThreadPool)的应用 实例43 多线程互斥运行 实例44 多线程时钟应用程序 实例45 监视多线程 实例46 防止多线程应用程序死锁 实例47 文件同步操作与应用 实例48 在COM程序设计使用.NET组件 实例49 文件异步操作与多处理器系统 实例50 获取网络主机IP地址 实例51 C#对话信息框的应用 实例52 在C#快速调用Windows API 实例53 摄氏温度与华氏温度间相互转换(1) 实例54 摄氏温度与华氏温度间相互转换(2) 实例55 使用FileSystemWatcher组件监视Web服务器 实例56 由颜色名字产生对应颜色 实例57 使用索引指示器分析域名 实例58 C#版本的PingC 实例59 DNS客户程序 实例60 一个有趣的DOS实用程序 实例61 代表元基本应用 实例62 有趣的事件代表元 实例63 随机连续偶数发生事件处理 实例64 有趣的列表框窗体 实例65 数学函数应用 第3篇 Visual C#高级编程实例 实例66 文件夹的文件列表 实例67 读写文本文件 实例68 读写二进制文件 实例69 显示系统日期与时间(1) 实例70 显示差值的日期与时间(2) 实例71 时钟发生器应用 实例72 在.NET程序设计使用ATL 实例73 浏览Internet文件 实例74 在C#应用程序打开浏览器 实例75 显示Internet文件信息 实例76 Puzzle游戏 实例77 MDI窗体菜单设计(1) 实例78 MDI窗体菜单设计(2) 实例79 创建一个C#编辑器 实例80 网络端口扫描器 实例81 深入WinForms-地址簿应用(1) 实例82 深入WinForms--Image Viewer应用程序(2) 实例83 开饭时间提醒器(Meal Reminder) 实例84 服务器端C#实例 实例85 数字时钟设计技术 实例86 自动编译C#程序AutoCompiler 实例87 使用C#与ASP+编写File Uploder 实例88 访问注册表的硬件信息 实例89 设置“开始”菜单 实例90 在“新建”添加自己的文件类型 实例91 显示Exchange软件的客户名称 实例92 读取Windows注册表信息 实例93 自定义AboutBox组件 实例94 自定义控件及应用 实例95 Java与C#混合编程的应用 实例96 C#与C++混合编程的应用 实例97 C#与VB混合编程的应用 实例98 C#组件与C#客户程序编程的应用 实例99 C#与XML联合应用XMLHelper 实例100 在C#部署应用
第1篇 Visual C#基础编程实例
实例1 C#经典程序--Hello World
实例2 C#的简单输入输出(I/O)
实例3 C#的复杂输入输出(I/O)
实例4 通信录管理与维护
实例5 文件与目录管理
实例6 用户界面上的“Hello,World!”
实例7 组件化“Welcome”程序
实例8 网络上的“Hello World”
实例9 Ref、Out与Params描述符的应用
实例10 C#自动内存管理的应用
实例11 一个有趣栈类的实现
实例12 垃圾收集器管理与应用
实例13 垃圾收集器算法控制与使用
实例14 调用栈记录异常点
实例15 使用C#异常的栈跟踪
实例16 运行期间检测变量类型
实例17 常用值类型的原型定义
实例18 打印杨辉三角形
实例19 比较学生信息
实例20 获取车辆信息
实例21 简单角色类游戏的制作
实例22 旅馆住宿登记情况表制作
实例23 长命名空间的应用
实例24 文件特征计数
实例25 文本框输入数据的验证

第2篇 Visual C#级编程实例
实例26 窗体背景颜色动态变化
实例27 C#属性及应用
实例28 C#属性Metadata的管理与应用
实例29 使用Context属性创建CallThreshold Service
实例30 使用应用程序域
实例31 创建C#组件与客户应用程序
实例32 用OpenFileDialog类浏览或打开文件
实例33 在C#程序获得Win32 API
实例34 从C#调用COM组件
实例35 在C#程序修改HTML文件标题
实例36 下载Web页面
实例37 创建多线程应用程序
实例38 多线程的多次加载
实例39 单个线程同步运行
实例40 多线程同步运行
实例41 线程Thread Relative Static跟踪与实现
实例42 线程池(ThreadPool)的应用
实例43 多线程互斥运行
实例44 多线程时钟应用程序
实例45 监视多线程
实例46 防止多线程应用程序死锁
实例47 文件同步操作与应用
实例48 在COM程序设计使用.NET组件
实例49 文件异步操作与多处理器系统
实例50 获取网络主机IP地址
实例51 C#对话信息框的应用
实例52 在C#快速调用Windows API
实例53 摄氏温度与华氏温度间相互转换(1)
实例54 摄氏温度与华氏温度间相互转换(2)
实例55 使用FileSystemWatcher组件监视Web服务器
实例56 由颜色名字产生对应颜色
实例57 使用索引指示器分析域名
实例58 C#版本的PingC
实例59 DNS客户程序
实例60 一个有趣的DOS实用程序
实例61 代表元基本应用
实例62 有趣的事件代表元
实例63 随机连续偶数发生事件处理
实例64 有趣的列表框窗体
实例65 数学函数应用

第3篇 Visual C#高级编程实例
实例66 文件夹的文件列表
实例67 读写文本文件
实例68 读写二进制文件
实例69 显示系统日期与时间(1)
实例70 显示差值的日期与时间(2)
实例71 时钟发生器应用
实例72 在.NET程序设计使用ATL
实例73 浏览Internet文件
实例74 在C#应用程序打开浏览器
实例75 显示Internet文件信息
实例76 Puzzle游戏
实例77 MDI窗体菜单设计(1)
实例78 MDI窗体菜单设计(2)
实例79 创建一个C#编辑器
实例80 网络端口扫描器
实例81 深入WinForms-地址簿应用(1)
实例82 深入WinForms--Image Viewer应用程序(2)
实例83 开饭时间提醒器(Meal Reminder)
实例84 服务器端C#实例
实例85 数字时钟设计技术
实例86 自动编译C#程序AutoCompiler
实例87 使用C#与ASP+编写File Uploder
实例88 访问注册表的硬件信息
实例89 设置“开始”菜单
实例90 在“新建”添加自己的文件类型
实例91 显示Exchange软件的客户名称
实例92 读取Windows注册表信息
实例93 自定义AboutBox组件
实例94 自定义控件及应用
实例95 Java与C#混合编程的应用
实例96 C#与C++混合编程的应用
实例97 C#与VB混合编程的应用
实例98 C#组件与C#客户程序编程的应用
实例99 C#与XML联合应用XMLHelper
实例100 在C#部署应用程序 附录 WinCV 参考文献
第1篇 Visual C#基础编程实例
实例1 C#经典程序--Hello World
实例2 C#的简单输入输出(I/O)
实例3 C#的复杂输入输出(I/O)
实例4 通信录管理与维护
实例5 文件与目录管理
实例6 用户界面上的“Hello,World!”
实例7 组件化“Welcome”程序
实例8 网络上的“Hello World”
实例9 Ref、Out与Params描述符的应用
实例10 C#自动内存管理的应用
实例11 一个有趣栈类的实现
实例12 垃圾收集器管理与应用
实例13 垃圾收集器算法控制与使用
实例14 调用栈记录异常点
实例15 使用C#异常的栈跟踪
实例16 运行期间检测变量类型
实例17 常用值类型的原型定义
实例18 打印杨辉三角形
实例19 比较学生信息
实例20 获取车辆信息
实例21 简单角色类游戏的制作
实例22 旅馆住宿登记情况表制作
实例23 长命名空间的应用
实例24 文件特征计数
实例25 文本框输入数据的验证

第2篇 Visual C#级编程实例
实例26 窗体背景颜色动态变化
实例27 C#属性及应用
实例28 C#属性Metadata的管理与应用
实例29 使用Context属性创建CallThreshold Service
实例30 使用应用程序域
实例31 创建C#组件与客户应用程序
实例32 用OpenFileDialog类浏览或打开文件
实例33 在C#程序获得Win32 API
实例34 从C#调用COM组件
实例35 在C#程序修改HTML文件标题
实例36 下载Web页面
实例37 创建多线程应用程序
实例38 多线程的多次加载
实例39 单个线程同步运行
实例40 多线程同步运行
实例41 线程Thread Relative Static跟踪与实现
实例42 线程池(ThreadPool)的应用
实例43 多线程互斥运行
实例44 多线程时钟应用程序
实例45 监视多线程
实例46 防止多线程应用程序死锁
实例47 文件同步操作与应用
实例48 在COM程序设计使用.NET组件
实例49 文件异步操作与多处理器系统
实例50 获取网络主机IP地址
实例51 C#对话信息框的应用
实例52 在C#快速调用Windows API
实例53 摄氏温度与华氏温度间相互转换(1)
实例54 摄氏温度与华氏温度间相互转换(2)
实例55 使用FileSystemWatcher组件监视Web服务器
实例56 由颜色名字产生对应颜色
实例57 使用索引指示器分析域名
实例58 C#版本的PingC
实例59 DNS客户程序
实例60 一个有趣的DOS实用程序
实例61 代表元基本应用
实例62 有趣的事件代表元
实例63 随机连续偶数发生事件处理
实例64 有趣的列表框窗体
实例65 数学函数应用

第3篇 Visual C#高级编程实例
实例66 文件夹的文件列表
实例67 读写文本文件
实例68 读写二进制文件
实例69 显示系统日期与时间(1)
实例70 显示差值的日期与时间(2)
实例71 时钟发生器应用
实例72 在.NET程序设计使用ATL
实例73 浏览Internet文件
实例74 在C#应用程序打开浏览器
实例75 显示Internet文件信息
实例76 Puzzle游戏
实例77 MDI窗体菜单设计(1)
实例78 MDI窗体菜单设计(2)
实例79 创建一个C#编辑器
实例80 网络端口扫描器
实例81 深入WinForms-地址簿应用(1)
实例82 深入WinForms--Image Viewer应用程序(2)
实例83 开饭时间提醒器(Meal Reminder)
实例84 服务器端C#实例
实例85 数字时钟设计技术
实例86 自动编译C#程序AutoCompiler
实例87 使用C#与ASP+编写File Uploder
实例88 访问注册表的硬件信息
实例89 设置“开始”菜单
实例90 在“新建”添加自己的文件类型
实例91 显示Exchange软件的客户名称
实例92 读取Windows注册表信息
实例93 自定义AboutBox组件
实例94 自定义控件及应用
实例95 Java与C#混合编程的应用
实例96 C#与C++混合编程的应用
实例97 C#与VB混合编程的应用
实例98 C#组件与C#客户程序编程的应用
实例99 C#与XML联合应用XMLHelper
c#编程集合资料,不错的应用设计,另附一些开发案例的下载地址,欢迎大家下载学习。 学习完本课程之后,我们需要达到以下目标: (1) 掌握基本的C#语法,熟练运用C#编写基本的程序逻辑。 (2) 能够创建C#控制台应用程序并处理输入输出。 (3) 掌握C#的数组,并对数组进行相应的排序,查找操作。 (4) 熟练使用C#的字符串对象。 (5) 掌握Windows窗体应用程序的创建,能熟练使用常用的控件设计窗体界面。 (6) 掌握MDI应用程序的开发步骤。 (7) 了解ADO.NET的组成和工作原理。 (8) 通过ADO.NET访问对C#项目开发全程实录视频教程(全10个案例):htt: /cnrdn com/gCxC 课程说明… 第1章C#语法基础…… 核心技能部分 1.1 Net与C#概述. 111Net与C#的产生与应用 1.1.2 Visual studio 10 1.1.3创建C井应用程序 12 2C#语言基础 16 121变量与常量…16 12.2运算符和表达式 19 123C#语言的注释 1.2.4使用 Console处理输入输出 21 1.3 C#语句结构 25 131条件语句 .25 132循环结构 32 任务实训部分.… 38 1:根据时间输出问候信息…… 38 2:三个数字比较大小 39 3:判断用户输入的字母 .40 输出裴波那契数列…… 翻着音 40 巩固练习 第2章嵌套循环和数组. 44 核心技能部分… .45 2.1 VS2008的调试技巧 45 2.2 嵌套循环 47 2.3 数组. 50 231数组的定义 50 232数组的基木操作 50 233数组的排序 51 任务实训部分… 55 1打印等腰三角形 55 2:数组的操作 56 3:数组的排序。 错误!定义书签 4:数组的排序 错误!未定义书签 巩固练习 57 第3章方法与字符串 59 C#项目开发全程实录视频教程(全10个案例):htt: /cnrdn com/gCxC 核心技能部分 使用方法 311方法的定义 312方法的调用 63 313参数传递 String类 321C#语言常用的字符串处理方法... 68 322格式字符串 32.3 String Builder类. 3.3 类型转换…14 331隐式转换 74 332显式转换.…… 74 333常用类型转换方法… 7 任务实训部分 77 1:方法的使用 2:从邮件地址提取用广名 80 3:网址类型分析 81 4:字符串转换 82 巩固练习. 84 第4章指导学习:阶段总结 86 知识总结 翻着 .:::a:a:.:::a:B:a:::::..aa:::.:.aa:.:aa::: 86 41.1核心技能目标 86 412知识体系总结… 86 4.2 综合实训 任务1:制作月份日历 任务2:数组数据添加和排序. 错误!未定义书签 任务3:自杀游戏… 错误未定义书签。 第5章 Win form常用控件 核心技能部分 90 创建 Windows应用稈序 90 511 Windows应用程序概述. 90 512创建第一个 Windows应用程序 5.13项目结构分析 5,2 Windows窗体….97 5.,21窗体的常用属性. 98 522窗体的常用事件…… 99 Windows窗体的常用控件 9 C#项目开发全程实录视频教程(全10个案例):htt: /cnrdn com/gCxC 5.31 Winform控件公共属性… 532标签Labe) 01 533文本框( TextBox) ·,, 101 534按钮( Button)…102 535列表框 ListBox) 102 536组合框 Combobox) 103 53.7单选按钮( Radio Button)和复选框( CheckBox) 104 538图片框( Pictruebo×)..105 54用 Message Box类显示消息窗口 541消息框的显示……106 5.4.2消息框的返回值 107 综合案例:职员信息管理. 109 仟务实训部分…… 115 1:ATM信息查询 115 2:编写建表向导窗体…… 3:火车票预定程厅… 124 巩固练习… 第6章 MD窗体应用程序设计… 核心技能部分…… 130 6.1 SD窗体和MD窗体应用程序简介. 错误!未定义书签。 6.2 单文档应用程序的创建 30 62.1菜单栏( Menustrip) 130 622菜单栏的创建 130 623上下文菜单 ContextMenuStrip) 6.3 多文档应用程序 错误!未定义书签。 631创建多文档界面应用程序. 错误!未定义书签 632排列子窗口 错误未定义书签。 64图像列表( mageList控件… 134 65工具栏( ToolStrip控件) 135 66 状态( StatusStrip) 138 67选项卡( TabControl Timer控件 69 MD综合示例 错误!定义书签 任务实训部分……143 1创建记事本”应用程序 错误!未定义书签 2:增强”记事本”功能∴ 143 3:实现记事本字体样式设置… 144 C#项目开发全程实录视频教程(全10个案例):htt: /cnrdn com/gCxC 4:变色窗体 巩固练习……… 1448 第7章 使用 ADO. NET完成简单的数据库操作…. ·,, 150 核心技能部分 151 ADO. NET概述 151 1 ADO.NET的简介 151 7.12 ADO.NET的优点 152 713 ADO.NET的结 52 NET Framework数据提供程序 1154 7.21 Connection对象…………………………155 72.2使用 Connection对象链接到数据库 7.3异常操作 57 731try和 catch块 158 732数据库链接示例 Command对象 ∴161 741 Command对象简介 161 742 Command综合示例 任务实训部分 1:实现进销存系统用户注册 168 2:实现进销存系统用户登录.… 171 3:实现用户的删除功能…… .:.::::::.:...:::.:.:a.::::.:::::::::.:::.:::::::.:::.: 172 巩固练习 174 第8章使用 Data Reader完成查询功能 177 核心技能部分… 178 8.1 DataReader对象 811 Data reader对象简介 178 812 Data Reader对象常用的属性和方法 813 Data reader对象的使用 179 8.2 控件 81 821 Listview控件介绍…… 81 822 Listview控件的使用 数据库操作综合示例 187 任务实训部分…… L94 1:使用 Listview控件查询部门员工信息… 94 2:部门员工信息删除和修改 3:实现员工信息模糊查询... 203 巩固练习 204 C#项目开发全程实录视频教程(全10个案例):htt: /cnrdn com/gCxC 第9章 使用 Dataset实现断开式数据访问 206 核心技能部分.… 207 91数据集( Dataset) ·,, 207 911数据集( DataSet)简介…207 912数据集的结构 08 91.3数据集的工作原理 914创建 Data set对象…… 211 9,2 DataAdapter对象1211 92.1 DataAdapter对象简介… 211 922 DataAdapter对象的使用.. 213 3 Datagridview控什的使用 219 931 Data gridview控件简介 219 932 Datagridview控件的使用. 221 9 综合示例 226 仟务实训部分.… 229 1:航班查询窗体设计 29 2:显示所有航班信息 232 3:根据两地査询航班 .233 4:航班详细信息查询 234 巩固练习 235 第10章课程总复习… …)误!未定义书签。 101知识总结 错误!未定义书签 1011核心技能目标 错误!定义书签。 101.2知识体系总结 错误!未定义书签。 02任务实训 错误!未定义书签。 第11章项目案例:酒店管理系统…… 错误!未定义书签 111训练技能点…… 错误未定义书签。 112需求说明 错误!未定义书签 113设计与思路分析 错误未定义书签 113.1系统功能分析 错误!未定义书签。 1132数据库设计 错误!定义书签。 114实现步骤…… 错误!未定义书签 115时间分配 错误!定义书签 C#项目开发全程实录视频教程(全10个案例):htt: /cnrdn com/gCxC 第1章C#语法基础 学习内容 c#的发展史 C#的基本语法 C#的流程控制语句 俨能力目标 掌握仗用S2008开发C#NET控制台应用程序 掌握C#语言的基本语法 掌握c#的程序流程控制语句 C#项目开发全程实录视频教程(全10个案例):htt: /cnrdn com/gCxC 本章简介 从本门课开始我们将要开始学习¢#语言和NET平台。本章将使学员对NET和¢#有一个 初步的认识,了解C#的开发环境,编写第一个C#控制台应用程序。C#语言的基本语法和我 们之前的学习的C语言、Java语言一样同属于C语言语法系列,有很多相似的地方,同时也 有一些不同的地方,因此我们在学习的时候需要注意它们之间的区别,不要混淆。在本章, 我们需要掌握c#的变量、数据类型、运算符、条件、分攴、循环等基C排基础语法,这些 语言层血的知识是我们编写所有程序的基础,因此必须牢固掌握。 核心技能部分 1.1Net与C#概述 1.1.1Net与C#的产生与应用 1. Anders Hejlsberg-C#之父 Anders hejlsberg原木是曾经大名鼎鼎的 Borland公司的一员,他曾经编写了 Pasca编译 器,又把 Turbo pascal变为面向对象的 Object Pascal,并以此为基础开发了轰动全球、盛极 时的廾发工具 Delphi,为 Boland公司赚了个盆钵满盈。 随着 Delphi日渐成熟, Anders的兴趣转向了Java领域,他在」ava开发领域扩展方面有 很多自己独特的想法,并想在此领域大展宏图,但 Borland的经营者们还要靠他这棵“摇 钱树”继续在 Delphi上人肆捞金,所以他有一段郁郁不得志。 比尔盖茨三顾茅庐,力邀 Anders hejlsberg,并许以重金和宽松的环境,终于把 Anders 挖到了微软的旗下,其后由其主持设计,在2000年6月发布了新的开发语言C#(读做C Sharp),此后微软在2002年推出了 Microsoft net开发平台。 3 1.1.1 Anders He jlsberg C#项目开发全程实录视频教程(全10个案例):http://cnrdn.com/gcxc 2.C#语及其特点 与Java一样,C#语言是一个完全的面向对象语言,它继承了C++、Java和 Delphi的优 点,又借鉴了VB的简单易学。体现了当今最新的程序设计技术的功能和精华。C#继承了C 语言的语法风柊,同时又继承了C+的面冋对象特性。不同的是,c#的对象模犁己经面向 Internet进行了重新设计,使用的是NET框架的类库;C#不再提供对指针类型的支持,使得 程序不能随便访问内存地址空间,从而更加健壮;C#不再支持多重继承,避免了以往类层次 结构由于多重继承带来的可怕后果。NET框架为C#提供了一个强大的、易用的、逻辑结 构一致的程序设计环境。同时,公共语言运行时( Common Language runtime)为C#程序语 言提供了一个托管的运行时环境,使程序比以往更加稳定、安全。其特点有: 语言简洁。 保留了C++的强大功能 快速应用廾发功能 语言的自由性 强大的Web服务器控件。 支持跨平台 与XML相融合 如果之前没有其他话言的编程经验,使用c#语言编程将是一个良好的开端。如果有其 他语言的编程基础,程序员将发现¢#语言除了像ⅤB一样简单易学外,还是一种拥有强大 功能的语言。而且 ASP NET平台也是完仝通过c#语言开发的,这决定了C语言得天独厚的 优势。但在任何情况下,C#语言都不可能孤立地使用,它必须同 Microsoft. net framework 起使用,因为使用C#语言编写的所有代码总是在 Microsoft .net framework运行。 1.1.2 Visual studio 微软针对Net推岀了功能强大的集成丌发环境来支持开发人员的№et应用程序丌发,这 就是 Visual studio,它是目前最主要的Net平台开发环境。VS集成了 NET Framework和Net 开发插件,可以用来进行几乎所有Net应用程序的设计和开发L作,如 Windows应用程序 Web应用稈序、 Windows服务、智能设备应用程序等。 随着 NET Framework的不断升级, Visua| Studio也在不断升级,其发展历程可以用表1-1-1 来说明 表1-1-1Vs发展历程 年代 2002 2003 2005 2008 2010 廾发工具版木Vs2002 VS2003 VS2005 VS2008 VS2010 Net 1.0 1.1 2.0 3.5 4.0 Framework 由于本学期的知识点主要集在C#的基本语法、 Win forms开发和 ADO. NET,这些知识

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧