سفارش تبلیغ
صبا ویژن
اوقات شرعی
دانش، منشأ هرگونه خیری است . [پیامبر خدا صلی الله علیه و آله]
امروز: چهارشنبه 103 آذر 28

متغیرها
تمام برنامه های کامپیوتری ، به منظور
نگهداری موقت اطلاعات از متغیر ها استفاده می کنند. مثلا" در صورتی که 
برنامه ای نوشته شده است که عددی را بعنوان ورودی خوانده و جذر آنرا محاسبه و در
خروجی نمایش دهد ، از یک متغیر به منظور ذخیره عدد وارد شده توسط کاربر استفاده و
پس از ذخیره کردن عدد مورد نظر امکان عملیات دلخواه بر روی آن فراهم خواهد شد.

متغیرها را می بایست قبل از استفاده ، تعریف کرد. در زمان
تعریف یک متغیر می بایست نوع داده هائی که قرار است در آن نگهداری گردد را نیز
مشخص کرد.مثلا" می توان متغیری تعریف کرد که در آن ، اعداد نگهداری شده و یا
متغیر دیگری را تعریف کرد که بتوان در آن نام و نام خانوادگی را ذخیره کرد. در
زبان برنامه نویسی جاوا تمام متغیرها قبل استفاده می بایست تعریف و همزمان نوع
داده هائی که می توان در آنها نگهداری گردد را نیز مشخص کرد .

مثال : در برنامه زیر ، دو متغیر width و height تعریف شده اند. نوع متغیرهای فوق ، int تعریف شده است . یک متغیر از نوع int ، قادر به نگهداری یک عدد صحیح ( مثلا" 1، 2 ، 3 ) است .
مقدار اولیه هر یک از متغیرهای فوق ، مقدار 200 در نظر گرفته شده است .

عملیات مربوط به نسبت دهی یک مقدار اولیه  به متغیرها
" مقدار دهی اولیه " می گویند. یکی از اشکالاتی که ممکن است در برخی از
برنامه ها اتفاق افتد ، عدم مقدار دهی اولیه متغیرها است . بنابراین توصیه می گردد
در زمان تعریف یک متغیر ، مقدار دهی اولیه آن را انجام تا از بروز برخی خطاهای
احتمالی در آینده پیشگیری گردد.

در زبان جاوا دو نوع متغیر وجود دارد : متغیرهای ساده (Primitive) و کلاس ها .  نوع int ساده بوده و قادر به نگهداری یک عدد است . تمام عملیاتی که می توان با
متغیرهای ساده انجام داد ، صرفا" نگهداری یک مقدار با توجه به نوع متغیر است
. کلاس ها ، قادر به دارا بودن چندین بخش بوده و با استفاده از متدهای
مربوط به هریک ، امکان استفاده آسان آنها فراهم می گردد.
Rectangle یک نمونه از کلاس های فوق است .

متن برنامه

import java.awt.Graphics;

import java.awt.Color;

 

public class FirstApplet extends java.applet.Applet

{

 

    public void paint(Graphics
g)

    {

        int width = 200;

        int height = 200;

        g.drawRect(0, 0, width,
height);

        g.drawLine(0, 0, width,
height);

        g.drawLine(width, 0, 0,
height);

    }

}

در برنامه
ارائه  شده  ، همواره یک خط قطری در پنجره ای با ابعاد 200 * 200 پیکسل
، رسم می گردد . عدم امکان پویائی ابعاد پنجره ، یکی از محدودیت های برنامه فوق
است . فرض کنید در این رابطه ، امکانی در برنامه پیش بینی گردد که از کاربر
درخواست شود ابعاد پنجره را مشخص نماید . پس از مشخص نمودن ابعاد پنجره توسط کاربر
، خط قطری بر اساس ابعاد ارائه شده ، رسم گردد . با مراجعه به صفحه مستندات مربوط
به کلاس
Graphic ، ( موجود در فایل java.awt.Graphic.html ، فایل فوق شامل لیست تمام
توابع مربوط به عملیات گرافیکی است ) ، با تابع
getClipBounds برخورد خواهیم کرد . تابع فوق
پارامتری را بعنوان ورودی اخد نکرده و یک مقدار از نوع
Rectangle را برمی گرداند. Rectangle برگردانده شده ، شامل طول و عرض
محدوده مورد نظر برای رسم است . کلاس
Rectangle دارای چهار متغیر به اسامی x,y,width,height است .  بنابراین به منظور
امکان پویا نمودن ابعاد پنجره ، با استفاده از
getClipBounds  ، محدوده Rectangle را اخذ و پس از استخراج مقادیر
مربوط به
width و height  از Rectangle ، آنها را در متغیرهای width و height ذخیره می نمائیم .

متن برنامه

import java.awt.Graphics;

import java.awt.Color;

import java.awt.Rectangle;

 

public class FirstApplet extends java.applet.Applet

{

 

    public void paint(Graphics
g)

    {

        int width;

        int height;

        Rectangle r;

 

        r = g.getClipBounds();

        width = r.width - 1;

        height = r.height - 1;

 

        g.drawRect(0, 0, width,
height);

        g.drawLine(0, 0, width,
height);

        g.drawLine(width, 0, 0, height);

    }

}

پس از
اجرای برنامه فوق ، مشاهده خواهد شد که
Rectangle و قطرها بصورت کامل در محدوده مربوطه قرار خواهند گرفت . پس از
تغییر اندازه پنجره ،  قطرها و
Rectangle براساس مقادیر جدید بصورت خودکار مجددا" رسم خواهند شد. در
رابطه با برنامه فوق ، ذکر نکات زیر ضروری است :

·       با توجه به استفاده از کلاس Rectangle ، لازم است از java.awt.Rectangle استفاده گردد. 

·       در برنامه فوق سه متغیر تعریف شده است . دو متغیر ( width و height) از نوع int و یک متغیر (r) ، از نوع Rectangle است .

·       تابع getClipBounds ، پارامتری را بعنوان ورودی اخذ نکرده و صرفا" یک Rectangle را برمی گرداند. دستور : r=g.getClipBounds ، یک Rectangle را برگردانده و آن را در متغیر r ذخیره می نماید.

·       متغیر r ، از نوع کلاس Rectangle بوده و دارای چهار متغیر است . (x,y,width,height) . به منظور دستیابی به هر یک
ازمتغیرها
،
از
عملگر نقظه استفاده می گردد. مثلا" r.width ، عنوان می نماید که در متغیر r ، مقداری با نام width بازیابی می گردد. مقدار مورد
نظر در متغیر محلی با نام
width ذخیره می گردد.

·       در نهایت از width و height  در توابع مربوط به رسم ، استفاده می گردد.

جاوا دارای چندین نوع متغیر ساده
است . سه نمونه رایج در این زمینه عبارتند از :

·       نوع صحیح (int)

·       نوع اعشاری (float)

·       نوع کاراکتری (char)


 نوشته شده توسط وحید قویدل در یکشنبه 86/10/23 و ساعت 12:28 صبح | نظرات دیگران()
 لیست کل یادداشت های این وبلاگ
نرم افزارهای ضدویروس
[عناوین آرشیوشده]

بالا

طراح قالب: رضا امین زاده** پارسی بلاگ پیشرفته ترین سیستم مدیریت وبلاگ

بالا