NESNE TABANLI PROGRAMLAMA-1 DERS UYGULAMALARI (22 EYLÜL - 14 KASIM



Benzer belgeler
Ders 8: Metotlar. barisgokce.com

HSancak Nesne Tabanlı Programlama I Ders Notları

NESNEYE DAYALI PROGRAMLAMA 9. HAFTA UYGULAMA DERSİ

11- FONKSİYONLAR (FUNCTIONS)

Sunum İçeriği. Programlamaya Giriş

C# Metotlar ve Metot Tanımlama

Nesne tabanlı programlama nesneleri kullanan programlamayı içerir. Bir nesne farklı olarak tanımlanabilen gerçek dünyadaki bir varlıktır.

/*Aşağıda ki kodları doğru şekilde anlar ve kullanırsanız java da sınıfları biraz da olsa anlamış olursunuz.*/

Görsel Programlama 1

Operator Aşırı Yükleme (Operator OverLoading)

public static int Toplam int x, int y

Nesneye Dayalı Programlama

Sınıflar ve Yapılar Arasındaki Farklılıklar. Değer ve Referans Türde Olan Aktarımlar

Uzaktan Eğitim Uygulama ve Araştırma Merkezi

CBÜ Teknoloji Fakültesi, Yazılım Mühendisliği. Nesneye Yönelik Programlama

static void dizi_24() { Random rnd = new Random(); int [] tutulan=new int[10]; int dogru;

Aynı tipten çok sayıda değişken topluluğudur. X Y Score1 Score2 (0) (1) (2)...

Programlama Dilleri 3

Java da Soyutlama ( Abstraction ) ve Çok-biçimlilik ( Polymorphism )

Akış Konrol Mekanizmaları

Mühendislik Fakültesi Elektrik-Elektronik Mühendisliği C Programlama 7. Bölüm Metot Tanımlama ve Kullanma

BPR152-Algoritma ve Programlama II Uygulama -13

/*int sayi1, sayi2,toplam=0;

elemanlarının gezilmesine yönelik bir örnek sunulmuştur, inceleyiniz.

ALGORTMA ve PROGRAMLAMA - II (C# Sürümü) DERS NOTLARI

BİL-141 Bilgisayar Programlama I (Java)

Bu parçalar arasındaki ilişkiyi kullanıp büyük çaplı programlar geliştirme tekniğine de nesne yönelimli programlama denir.

Uzaktan Eğitim Uygulama ve Araştırma Merkezi

Arayüz (Interface) Altuğ B. Altıntaş 2003 Java ve Yazılım Tasarımı - Bölüm 7 1

Programlama Dilleri 3

T.C. MARMARA ÜNİVERSİTESİ BİLGİSAYAR VE ÖĞRETİM TEKNOLOJİLERİ ÖĞRETMENLİĞİ BÖLÜMÜ EĞİTİM ÖĞRETİM YILI PROGRAMLAMA DERSİ KAPSAMINDA YAPILAN

Nesneye Dayalı Programlama

1. Aşağıdaki program parçacığını çalıştırdığınızda result ve param değişkenlerinin aldığı en son değerleri ve programın çıktısını yazınız.

Ders 4: Diziler (Arrays( Arrays) barisgokce.com

DATA STRUCTURES. Lab II Metotlar, Diziler ve Hata Ayıklama. Doç. Dr. Aybars UĞUR

5.HAFTA. Sınıf ve Nesne Kavramı, Metot Oluşturma, Kurucu Metot, this Deyimi

DATA STRUCTURES. Lab II Metotlar, Diziler ve Hata Ayıklama. Prof. Dr. Aybars UĞUR

Görsel Programlama DERS 03. Görsel Programlama - Ders03/ 1

NESNE TABANLI PROGRAMLAMA-2 DERS UYGULAMALARI-1

NESNEYE YÖNELİK PROGRAMLAMA

C# ÖRNEK UYGULAMALAR

Nesneye Dayalı Programlama

Yazılım Kodlama ve İ simlendirme Standartları v1.0

Nesne Yönelimli Programlama ve Kalıtım

Yeni bir proje açarken File New - Web Site diyoruz. Gelen ekranda Visual Basic veya C# seçilebilir. Biz ders kapsamında C# programlama dilini seçtik.

NESNEYE DAYALI PROGRAMLAMA 11. HAFTA UYGULAMA DERSİ

YZM 2105 Nesneye Yönelik Programlama

Programlama Dilleri 3

NESNEYE YÖNELİK PROGRAMLAMA

abstract Sınıflar 1 Sınıf sınıf1 new class Ama aşağıdaki şekilde referans alınabilir;

Önemli noktalar. Paradigma Nesnelere Giriş Mesajlar / Ara bağlantılar Bilgi Gizleme (Information Hiding ) Sınıflar(Classes) Kalıtım/Inheritance

Java ile Nesneye Yönelik Programlama (Object Oriented Programming)

ANA SINIF TÜRETİLEN BİRİNCİ SINIF TÜRETİLEN İKİNCİ SINIF

PROGRAMLAMA TEMELLERİ DERSİ ÖZETİ

C# Yazım Kuralları ERCİYES. Ü. BİLGİSAYAR M. COMPUTER PROGRAMMING II 1 FEHİM KÖYLÜ

BMÜ-112 ALGORİTMA VE PROGRAMLAMA-II LABORATUARI DENEY-2 FÖYÜ

Nesne Yönelimli Programlama

BMH-303 Nesneye Yönelik Programlama

Nesneye Dayalı Programlama

Görsel Programlama (Visual Programming)

C de Detaylı Üs Alma Programı. C# Dilinde Metot Tanımlama ve Yazdırma

JAVADA METOTLAR. BMÜ-111 Algoritma ve Programlama. Yrd. Doç. Dr. İlhan AYDIN

JAVA PROGRAMLAMA DİLİ ÖZELLİKLERİ

Sınıf üyeleri: değişkenler (fields) and metotlar (methods) Değişkenler: nesne içerisindeki değişkenlerdir Temel veri tipi veya sınıf tipi

C++ Dersi: Nesne Tabanlı Programlama

BOĞAZİÇİ ÜNİVERSİTESİ UNVAN DEĞİŞİKLİĞİ SINAVI PROGRAMCI

2 VISUAL STUDIO 2012 GELİŞTİRME ORTAMI

3. Bölüm Soyut Sınıflar (Abstract Classes) Java ile Nesne Merkezli ve Fonksiyonel Programlama Akın Kaldıroğlu

1 GİRİŞ 1 C# Hakkında Genel Bilgiler 1.Net Framework 1 CLR 2 CLR Ve CTS 2 Temel Sınıf Kütüphanesi 3 CIL 3 Algoritma Nedir? 4 Sözde Kod (Pseudocode) 5

Şablon Türler (Generics)

YZM 2105 Nesneye Yönelik Programlama

Görsel Programlama DERS 02. Görsel Programlama - Ders02/ 1

BMÜ-111 Algoritma ve Programlama. Bölüm 5. Tek Boyutlu Diziler

Diziler İndisli Değişkenler

Lab7 DOĞU AKDENİZ ÜNİVERSİTESİ BİLGİSAYAR VE TEKNOLOJİ YÜKSEKOKULU BİLGİSAYAR PROGRAMCILIĞI. BTEP212 Java. Uygulama1: package javaapplication58;

C# Çalışma Örnekleri

7. HAFTA. Erişim Belirleyiciler

BTEP243 Ders 3. class Yazım Kuralı:

Lambda İfadeleri (Lambda Expressions)

NESNE YÖNELİMLİ PROGRAMLAMA HAFTA # 9

HSancak Nesne Tabanlı Programlama I Ders Notları

Değişkenler, içerisinde tek bir değer tutabilen yapılardır. Örneğin haftanın günlerini değişkenlerde tutmak istersek, her bir gün adı için bir

MAK 1005 Bilgisayar Programlamaya Giriş. Fonksiyonlar. Prof. Dr. Necmettin Kaya

C++ Dersi: Nesne Tabanlı Programlama

YZM 2105 Nesneye Yönelik Programlama

YZM 2105 Nesneye Yönelik Programlama

Hafta 13 Fonksiyonlar

Programlama Dilleri III 1

VERİ TABANI İŞLEMLERİ (NESNE TABANLI PROGRAMLAMA TEKNİĞİ İLE)

BİL-142 Bilgisayar Programlama II

MOBIL UYGULAMA GELIŞTIRME

Nesne Tabanlı Programlama

Görsel Programlama-I (Visual Programming) 2.Hafta

Chain of Responsibility Tasarım Şablonu KurumsalJava.com

Öğr. Gör. Musa AYDIN Fatih Sultan Mehmet Vakıf Üniversitesi

BPR152-Algoritma ve Programlama II Uygulama -12

1. SINIFLAR Sınıf (Class) Mantığı

Sınav tarihi : Süre : 60 dak. a) ABCDE b) BCDE c) ABCD d) kod hatalı e) BCD

DÖNGÜLER (LOOPS) while(), do-while(), for(), foreach()

Değişkenler. Geçerli değişken isimleri : baslamazamani, ad_soyad, x5 Geçersiz değişken isimleri : 3x, while

Transkript:

NESNE TABANLI PROGRAMLAMA-1 DERS UYGULAMALARI (22 EYLÜL - 14 KASIM 2014) //Class (Sınıf) // Sınıf (class) soyut veri tipidir. // Nesne (object) sınıfın somutlaşan bir cismidir. // static : nesnesi oluşturulmaz. // non-static : nesnesi oluşturulabilir. // static sınıf içerisinde sadece static metot bulunur // static olmayan sınıf içerisinde static veya static olmayan metot bulunabilir //Sınıf Üyeleri: // Değişkenler // Özellikler // Metotlar // Olaylar // Delegeler //Erişim İzinleri : Herhangi bir sınıf veya sınıf üyesine erişim türü // public : Genel erişim. Bütün sınıflar erişebilir. // private : Özel erişim. Sadece tanımlandığı sınıf erişebilir. // protected : Korumalı erişim. Tanımlandığı sınıf ve miras alan sınıflar erişebilir. // internal : Aynı isim alanındaki diğer sınıflar erişebilir. // protected internal : Aynı isim alanında olan sınıf veya miras alan sınıflar erişebilir. //metot //Sınıf1.Topla(5,2); Sınıf1.Metot1(); Sınıf2.Metot2(); class Sınıf1 private static int Topla(int a, int b) return a + b; public static int Çıkarma(int a, int b) return a - b; protected static int Çarp(int a, int b) return a * b; public static void Metot1() Console.WriteLine(Topla(3,5)); class Sınıf2 : Sınıf1 public static void Metot2() Console.WriteLine(Çarp(3,5));

//Öğrenci sınıfı oluşturulur //Öğrencinin Adı, Doğum Yılı belirlenir //Doğum Yılının sadece 1990 ile 2000 arasında değer olması sağlanır. // (varsayılan doğum yılı 1990 kabul edilir) //Öğrencinin doğum yılına göre yaşını hesaplayan özellik oluşturulur //Öğrencinin Adını ve Yaşını gösteren ToString metodunu oluşturulur Öğrenci öğr1 = new Öğrenci() Ad = "ali", DogumYil = 1980 ; Öğrenci öğr2 = new Öğrenci() Ad = "veli", DogumYil = 2005 ; Öğrenci öğr3 = new Öğrenci() Ad = "selami", DogumYil = 1995 ; Console.WriteLine(öğr1); Console.WriteLine(öğr2); Console.WriteLine(öğr3); class Öğrenci int _dogumyil = 1990; public string Ad get; set; public int DogumYil get return _dogumyil; set if (value >= 1990 && value <= 2000) _dogumyil = value; public int Yas get return DateTime.Now.Year - this.dogumyil; public override string ToString() return String.Format("0 1", Ad, Yas);

//Özellikler // Değişken gibi değer alabilen, metotlar gibi kod yazılabilen sınıf üyeleridir // İsimlerinden sonra parantez yazılmaz // Sadece bir değer alır // Sadece bir değer geri döndürür // Atama işlemlerinde eşitliğin sağında veya solunda bulunabilirler // Özelliğin iki kısmı vardır. // get (almak) : Özellik değerini elde etmek için kullanılır // set (kurmak) : Özellik değerini değiştirmek için kullanılır X = 5;//set int a = X;//get Console.WriteLine(a); Y = 8; int b = Y; Console.WriteLine(b); //değişken gibi değer alabilen özellik public static int X get; set; //metot gibi kod yazılabilen özellik static int _y=13; public static int Y get return _y; set if (value >= 1 && value <= 50) _y = value; //Metotlar: // Kod bloklarının tekrar kullanılmasını sağlayan sınıf üyeleridir // İsimlerinden sonra parantez yazılır // Birden fazla değer alabilir // Birden fazla değer döndürebilir // Atama işlemlerinde eşitliğin sol tarafında yer almaz // Metot() = 5; //hatalı kullanım // int a=metot(); // Metot içerisinde metot tanımlanamaz //Metot Tanımlama: // Erişim_türü static? veri_türü metot_adı(parametreler)... // Aynı metot isimleri birden fazla tanımlanabilir // Aynı isimdeki metotların parametre veri tipleri veya parametre sayıları farklı olmalıdır

Yaz(); Yaz("veli"); Yaz("selami", 11); Bekle(3); Yaz("oya", 30, 15); Yaz("ipek", 20, 5, 14); Bekle(); public static void Bekle() Console.Read(); static void Bekle(int saniye) System.Threading.Thread.Sleep(saniye * 1000); public static void Yaz() Yaz("ali"); public static void Yaz(string s) Console.WriteLine(s); public static void Yaz(string s, int renk) Renk(renk); Yaz(s); public static void Yaz(string s, int sol, int üst) Git(sol, üst); Yaz(s); public static void Yaz(string s, int sol, int üst, int renk) Renk(renk); Git(sol, üst); Yaz(s); public static void Renk(int renk) Console.ForegroundColor = (ConsoleColor)(renk % 16); public static void Git(int sol, int üst) Console.CursorLeft = sol; Console.CursorTop = üst;

//Metotlardan değer döndürme //İki sayının toplamını hesaplayan metot int x = Topla(4, 5); Console.WriteLine(x); Console.WriteLine(Topla(2, 6)); static void Metot() /*...*/ return; static int Topla(int a, int b) return a + b; //Metotlardan birden fazla değer elde etme //out: metottan değer almak için kullanılır //ref: metoda değer göndermek ve metottan değer almak için kullanılır //İki sayının toplamını ve farkını hesaplayan metot int t = 9, f; İşlem(6, 2, ref t, out f); Console.WriteLine("Toplam:0, Fark:1", t, f); static void İşlem(int a, int b, ref int toplam, out int fark) toplam = a + b + toplam; fark = a - b; //Rastgele üretilen 100 sayının toplamını ve ortalamasını hesaplayan metot Random rnd = new Random(); int[] dizi = new int[100]; for (int i = 0; i < dizi.length; i++) dizi[i] = rnd.next(1000); int toplam; double ortalama; İstatistik(dizi, out toplam, out ortalama); Console.WriteLine("Toplam:0, Ortalama:1", toplam, ortalama); static void İstatistik(int[] dizi, out int toplam, out double ortalama) toplam = 0; foreach (var item in dizi) toplam += item; ortalama = (double)toplam / dizi.length;

//Metotların farklı miktarlarda parametre alabilmesi //topla(1,2) //topla(1,2,3) //topla(1,2,3,4) //iki veya üç sayının toplamını bulan metot. Console.WriteLine(Topla(1, 2)); Console.WriteLine(Topla(1, 2, 3)); static int Topla(params int[] dizi ) int top = 0; foreach (var item in dizi) top += item; return top; //Kelimeleri birleştiren metot. //Kelime aralarında istenen işaret olacak //ali topu tut -> ali,topu,tut Console.WriteLine(Birleştir('-', "ali", "topu", "tut","sakın","bırakma")); static string Birleştir(char ayraç, params string[] kelimeler) string s = ""; foreach (var item in kelimeler) s += item + ayraç.tostring(); s=s.trimend(ayraç); return s; ------------------------------------------ VİZE ----------------------------------