自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(50)
  • 收藏
  • 关注

原创 C#基础学习25(ProductManagmentSystem)

商品管理系统1.按照三层架构创建项目:2.引用3.制作窗体界面4. 新建实体模型Modelpublic class Product{ private int id; public int Id { get { return id; } set { id = value; } } privat...

2019-06-23 21:54:39 515

原创 C#基础学习24(三层架构及案例)

一、三层架构1.表现层(UI):User Interface,通俗讲就是展现给用户的界面,即用户在使用一个系统的时候他所见所得2.业务逻辑层(BLL):Business Logic Layer,针对具体问题的操作,也可以说是对数据层的操作,对数据业务逻辑处理。(备注:又称领域层,常用于业务规则、数据访问、合法性校验)3.数据访问层(DAL):Data Access Layer,针对数据...

2019-06-23 16:40:17 701

原创 C#基础学习23(DataSet查询和更新数据)

窗体代码:DataSet ds = new DataSet();//点击查询private void 查询数据ToolStripMenuItem_Click(object sender, EventArgs e){ LoadDSData(); }//点击更新private void 修改更新ToolStripMenuItem_Click(obje...

2019-06-23 15:29:04 1128

原创 C#基础学习22(DataSet和DataTable)

DataSet可以比作一个内存中的数据库,DataTable是一个内存中的数据表,DataSet里可以存储多个DataTableDataSet:数据集,一般包含多个DataTable,用的时候,dataset["表名"]得到DataTableDataTable:数据表例:static void Main(string[] args){ //DataSet...

2019-06-23 14:11:59 276

原创 C#基础学习21(封装SQLHelper)

优点:代码重用率高,便于维护易修改,代码更简洁、条理在App.config中添加<connectionStrings> <add name="connStr" connectionString="server=localhost;user id=root;password=123;database=pqxit;charset=utf8;port=3306"/>...

2019-06-18 16:31:16 186

原创 C#基础学习20(防止SQL注入攻击)

登录演示:代码://点击登录按钮private void btnLog_Click(object sender, EventArgs e){ object m_obj; //获取输入的用户名密码 string userName = txtName.Text.Trim(); string userPsw = txtPsw.Text.Trim(); ...

2019-06-18 15:14:25 679 1

原创 C#基础学习19(数据库增删改查)

效果图:1.引用MySql.Data.dll并在程序中 using MySql.Data.MySqlClient;2.写一个Product的实体类3.制作窗体4.思路代码:public partial class Form1 : Form{ //连接字符串 private string connStr = "server=localhost;user...

2019-06-17 19:11:06 276

原创 C#基础学习18(连接MySql数据库)

一、连接数据库Data Source=;指定服务器IP(计算机名) 服务器\实例名Initial Catelog=;初始化分类,要连那个数据库名UserId=sa;Password=sa;用户名密码Integrated Security=true;使用Windows验证方法另外一种写法(旧):"server=.;database=Mydata;uid=sa;pwd=sa"...

2019-06-17 16:26:21 158

原创 C#基础学习17(Socket通信,模拟在线聊天案例)

Scoket编程模型服务器端1.创建Socket对象,设置协议、传输方式等(连接Socket) Socket()2.绑定IP与端口(设置要监听的IP与端口) Bind()3.开始监听 Listen()4.开始接受客户端连接 //阻塞线程,同时也需要循环不断接受用户连接 Accept()5.接受了哭护短的连接,生成一个新的Sock...

2019-06-16 18:03:47 287

原创 C#基础学习16(线程池、死锁)

一、线程池ThreadPool.SetMaxThreads(5,5);//设置线程池大小:最多线程个数(这里是5个)ThreadPool.QueueUserWorkItem(new WaitCallback ( 方法名 ) );//将方法排入队列以便执行ThreadPool.QueueUserWorkItem(new WaitCallback ( 方法名 ) ,参数);//带参数的方...

2019-06-16 16:47:37 338

原创 C#基础学习15(反射进阶:反射调用方法、反射写插件)

反射用到的命名空间:System.ReflectionSystem.TypeSystem.Reflection.Assembly一、反射调用方法例:class Program{ static void Main(string[] args) { //调用无参方法 Type m_type = typeof(Person);...

2019-06-15 15:47:57 466 1

原创 C#基础学习14(事件、反射)

一、事件1.事件是通过委托实现的,委托才是事件能正常执行的核心2.定义事件:使用Event关键字声明 public event MyDelegate MDL;3.事件帮我们做了两件事情: (1)创建一个对应的private的委托对象 (2)创建了一个“事件属性”(类似于蜀星的get和set),里面包含了add和remove方法4.事件对象只能用 “...

2019-06-15 15:47:15 200

原创 C#基础学习13(多播委托、泛型委托)

一、多播委托1.可绑定多个方法,相当于创建了一个委托组合2.作何的委托必须是同一个类型3.委托的组合是给事件用的,普通的委托很少用4.委托可以直接赋值直接调用,委托的变量可以用+=、-=的方式赋值例:同C#基础学习13中委托案例class Program{ static void Main(string[] args) { //Greet...

2019-06-15 10:39:47 226

原创 C#基础学习12(委托、窗体传值)

一、委托(delegate)委托是一种数据类型委托是存放符合某种方法签名的方法的地址的集合解决方法无法作为参数传递例:有两个方法,分别是中文打招呼和英文打招呼,两个方法作为参数来传递class Program{ static void Main(string[] args) { Greet("李大锤",English);//调用打招呼方法,并...

2019-05-28 16:05:53 987

原创 C#基础学习11(敏感词汇审核案例、StringBuilder类)

一、StringBuilder(可变字符序列)String对象,一旦赋值就不可改变(叫做字符串的恒定性),赋值完了之后,再对String进行拼接,赋值等,都会再内存里面重新分配一个新的内存空间,StringBuilder解决了这个问题。方法:Append:可以将文本或对象添加到结尾处Capacity:设置容量和长度Insert:添加到指定位置AppendFormat:添加到...

2019-05-28 14:59:34 432

原创 C#基础学习10(正则表达式)

一、正则表达式以^符号开始,以$符号结束例1:(15位或者18位身份证验证) 引入命名空间 using System.Text.RegularExpressions;代码实现:static void Main(string[] args){ string IDnumber = "^([1-9][0-9]{14}|[1-9][0-9]{16...

2019-05-27 16:00:04 219

原创 C#基础学习09(XML)

一、认识XML1.特殊符号:字符 实体引用 & &amp; > &gt; < &lt; " &quot; ' &apos; 2.CDATA部件(可不被xml所解析)用法: <![CDATA[内容]]>二、解析xml1.准备好xml文件...

2019-05-21 16:05:21 217

原创 C#基础学习08(序列化和反序列化)

1.引用命名空间using System.Runtime.Serialization.Formatters.Binary;//引入命名空间2.类必须是可序列化的[Serializable] //使此类可序列化public class Person{ private string name; public string Name { ...

2019-05-16 14:43:33 283

原创 C#基础学习07(熟悉Winform、消息弹窗、IO文件操作)

一、消息弹窗1.窗体跳转OrderForms of = new OrderForms();//new出新的窗体对象this.Hide(); //隐藏当前窗体of.ShowDialog(); //打开窗体of.Show(); //打开隐藏的窗体二、IO文件操作例:通过路径读取活写入文本文件,显示到窗体中,复制按钮为复制一个视频案例。...

2019-05-15 20:28:17 511

原创 C#基础学习06(接口、IComparable、泛型接口)

一、接口(interface)1.接口可多实现2.实现方法与继承类相同3.默认public,方法前不能加访问修饰符public class Student:IComparable{ }//如果类继承了父类public class Student:Person,IComparable{ }二、IComparable接口List中如果放的是一个对象,如果对List进行...

2019-05-15 13:23:21 327

原创 C#基础学习05(多态、抽象方法和虚方法)

一、多态(重写、重载)1.重写,在子类中修饰词后写new2.重载,父类中是抽象方法(abstract),子类中修饰词后写override里氏替换(子is父,父as子)二、虚方法(virtual)虚方法可定义在普通类中,不用在抽象类中虚方法可以选择实现,可以实现可以不实现虚方法必须有方法体,哪怕为空子类中修饰词后写override三、虚方法抽象方法区别...

2019-05-14 19:39:15 191

原创 C#基础学习04(继承)

一、继承1.语法与java的不同//java中public class Student extends Person{ }//C#中public class Student:Person{ }2.子类调用父类用base //父类中private string name;public string Name(){ get...

2019-05-13 15:54:53 135

原创 C#基础学习03(ArrayList、Hashtable)、泛型集合,字典Dictionary

一、ArrayList1.添加//java中ArrayList arr = new ArrayList();arr.add(1);//C#中ArrayList arr = new ArrayList();arr.Add(1);2.删除//java中Student stu = new Student();ArrayList arr = new ArrayList()...

2019-05-12 20:21:20 219

原创 C#基础学习02(索引器、静态类)

索引器特点:数组属性只能根据下标(索引)来访问,索引器可以为任意类型 索引器可以被重载 可以使用更灵活的方式访问,定义访问方式索引器小例子Student类class Student{ //存放学生信息 private Hashtable names = new Hashtable(); //定义一个索引器,...

2019-04-27 11:33:22 554

原创 C#基础学习01(基础关键字/枚举、结构、值类型和引用类型)

与Java区别参数地址传递:ref 例:public void init ( ref int i , ref string s ){ }数组循环:foreach访问器(get、set):例private int age;public int Age{ get { return age; } set { if (value &g...

2019-04-24 20:24:59 241

原创 Android内容提供者

一、为什么需要内容提供者组件使用内容提供者把私有的数据库内容暴露出来原理:1.内容提供者把数据进行封装,然后提供出来,其他应用都是通过内容解析者来访问2.定义内容提供者,定义一个类继承ContentProvider二、实现内容提供者步骤1.定义一个类继承 ContentProvider2.在清单文件里面配置内容提供者:配置中必须加上authorities&l...

2018-07-30 10:29:57 208

原创 Android进程间通讯aidl

一、didl介绍1.本地服务:运行在自己应用里面的服务2.远程服务:运行在其他应用里面的服务 实现进程间通信:IPC aidl:专门解决进程间通信的步骤:1.创建一个aidl文件,将要暴露的方法写到里面2. aidl 这个语言不认识 public,把 public 去掉3.手动编译 aidl 文件,系统自动帮助我们生成了一个类Stub继承了 B...

2018-07-29 19:22:02 209

原创 Android混合方式开启服务,百度音乐盒

一、混合方式开启服务需求:既想让服务在后台长期运行,又想调用服务里面的方法1.先调用 startService 方法开启服务,能保证服务在后台长期运行2.调用 bindService 方法,获取中间人对象(IBinder)3.调用 unbindService 解绑服务4.调用stopService 方法停止服务二、百度音乐盒1.创建一个服务,写播放、暂停等几个方法...

2018-07-29 16:59:35 243

原创 Android bindService开启服务

一、bindService开启服务 1.第一次点击按钮,会执行服务的onCreate方法和onBind方法 2.当onBind方法返回为null 的时候,onServiceConnected方法是不执行的 3.第二次点击按钮,服务没有响应 4.调用者(Activity)销毁,服务跟着一起销毁 5.服务不可以多次解绑,多次解绑会报异常 6.通过bind...

2018-07-29 16:03:19 533

原创 Android 两种上下文区别、常见对话框、动画

一、国际化 在res下创建不同国家语言环境集目录。例:中国:values-zh 英语:values-en二、两种上下文的区别1.this:最终继承Context 理解为子类2.getApplicationContext():返回的是Context对象 父类3.对话框只能用this,其他都可以三、常见对话框1.Toast2.对话框:普通对话框、...

2018-07-28 19:57:57 281

原创 Android 样式和主题

一、样式和主题1.区别: 1)样式一般作用在控件(Button、TextView等),样式的作用范围比较窄 2)主题一般作用在 Activity 或者 Application 节点下,主题作用范围比较大2.共同点: 定义的方式是一样的3.添加样式: values下的styles.xml中添加样式<style name=...

2018-07-28 17:09:20 293 1

原创 Android 任务栈、四种启动模式

一、任务栈的概念栈:先进后出队列:先进先出task:任务1.打开一个Activity叫进栈,关闭一个Activity叫出栈2.我们操作的Activity永远是栈顶的Activity3.任务栈是用来维护用户操作体验的4.应用程序退出了是任务栈清空了5.一般情况一个应用程序对应一个任务栈6.清单文件中可以配置Activity的启动模式二、Activity的四种...

2018-07-28 08:48:22 289 2

原创 Android Activity的生命周期

一、Activity方法1.onCreate():当Activity启用的时候调用2.onDestroy():当Activity销毁的时候调用3.onStart():当Activity编程可视的时候调用(在屏幕可见)4.onStop():当Activity不可见时调用5.onResume():当界面有按钮可以被点击了,获取了焦点了,这时方法被调用6.onPause():界面...

2018-07-27 20:26:47 153

原创 Android 短信大全、短信发送器案例

一、找到ListView1.布局中设置一个ListView2.MainActivity中找到控件二、设置数据1.定义一个String数组objects,将复制的祝福语放入数组中2.建一个ListView要显示的每个条目的布局:item3.设置数据ArrayAdapter<String> adapter = new ArrayAdapter<Strin...

2018-07-27 19:49:27 438

原创 Android 人品计算器案例

一、画布局1.EditText:输入姓名2.RadioGroup:里面放多个RadioButton选项3.Button:跳转到结果页面二、准备第二个页面1.activity_result.xml:显示结果布局2.TextView:三个,用来显示结果3.ResultActivity:用来加载第二个布局4.配置清单文件三、在MainActivity读取输入的数据并传...

2018-07-27 15:37:06 526

原创 Android 四大组件Activity-----Intent

一、Activity1.四大组件都要在清单文件里面配置2.如果想让应用有多个启动图标,Activity需要这样配置(想有几个启动图标就要有几个Activity这样配置)3. Activiyt 下的 lable 和 icon 属性可以和 Application 节点的属性不一样,默认用 Application 节点下的属性4.一个Android应用我们一般就配置一个启动图标就可以...

2018-07-27 11:16:35 134

原创 Android 开源项目实现多线程下载

public void click(View v){ //【1】获取下载路径 String path = et_path.getText().toString().trim(); //【2】创建HttpUtils对象 HttpUtils http = new HttpUtils(); //【3】实现断点下载 http.download(path, ...

2018-07-27 09:21:05 191

原创 多线程下载Android实现

package activitytest.example.com.downandroid;import android.os.Environment;import android.support.v7.app.AppCompatActivity;import android.os.Bundle;import android.view.View;import android.widge...

2018-07-26 20:26:53 117

原创 多线程下载Java实现

一、多线程加速下载下载1.不是说线程开的越多下载就越快 例:手机迅雷(建议3-4个线程)2.还受服务器带宽的影响3.相当于更多的cpu资源给了你二、多线程下载步骤分析1.获取文件大小2.在客户端创建一个大小和服务器一模一样的文件,提前申请好空间3.每个线程下载的开始位置和结束位置4.开多个线程去下载文件4.知道每个线程什么时候下载完毕了1.获取文件的大...

2018-07-26 18:49:47 264

原创 Android 提交数据方式

一、HttpClient方式进行get提交数据1.获取httpclient实例DefaultHttpClient client = new DefaultHttpClient();2.准备get请求,定义一个httpget实现HttpGet get = new HttpGet(path);3.执行一个get请求HttpResponse response = clien...

2018-07-26 10:47:26 280

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除